我有一个小问题,我想要一个div显示,当有人悬停在图像上,问题是这个图像是在php内部,而那里的document.getElementById不起作用。有没有办法解决这个问题?php getElementById
<?php echo "<img onmouseover='xxxxxx' src='img/img.png'>" ?>
x在哪里?
我有一个小问题,我想要一个div显示,当有人悬停在图像上,问题是这个图像是在php内部,而那里的document.getElementById不起作用。有没有办法解决这个问题?php getElementById
<?php echo "<img onmouseover='xxxxxx' src='img/img.png'>" ?>
x在哪里?
你需要在这里的代码这一行回显到客户端将处理onmouseover事件,像这样的网页创建一个javascript函数:我有一个小问题
<html>
<head>
<script language="javascript" type="text/javascript">
function imageSwap() {
var img = document.getElementById("img1");
//swap out the image...
}
</script>
</head>
<body>
<?php echo "<img id='img1' onmouseover='imageSwap()' src='img/img.png'>" ?>
</body>
</html>
谢谢,我试过了以前和它没有工作,似乎现在工作:) – 2011-05-05 14:25:05
,我想一个div来显示,当有人悬停在图像
确保信息访问谁不使用指点设备太
人问题是,这个图像是在php内部,而那里的document.getElementById不起作用。
您误诊了这个问题。 PHP在服务器上运行并将其输出发送到客户端。它不能阻止某些东西的工作(尽管它可以写得很糟糕,所以它输出了你不期望的东西)。
如果您认为PHP是造成您的问题的原因,那么您需要停止询问“为什么嵌入在此PHP中的JS不起作用?”并开始问“为什么从PHP输出的JS不同于我想写的JS?”
x是怎么回事?
很难说没有看到代码的其余部分。
这取决于你为什么不能看到div在第一个地方。它是不可见的?它没有显示?它不是文档的一部分吗?它被其他东西掩盖了吗?等等。
作为一个经验法则,你应该避免内在的事件属性,而倾向于通过存储在外部文件中的JavaScript分配事件处理程序。这是unobtrusive JavaScript的一部分。
你可以改变布赖恩·德里斯科尔的代码,使其动态,像这样:
<html>
<head>
<script language="javascript" type="text/javascript">
function imageSwap(el) {
var img = el.id;
//swap out the image...
}
</script>
</head>
<body>
<?php echo "<img id='img1' onmouseover='imageSwap(this)' src='img/img.png'>" ?>
</body>
</html>
这样,你将永远有您的徘徊上的图像正确的ID。不管图像的数量多少
不错的一个 - 绝对是我会在生产中做什么。 – 2011-05-05 16:20:03
getElementById不起作用的原因是因为没有图像的id属性。无论是从PHP或其他地方派生的HTML都是无关紧要的。 – 2011-05-05 14:17:16
你不能编辑PHP来添加ID吗? – 2011-05-05 14:17:41
我可以添加一个id,问题是当有人悬停在图像上时,我必须得到div的ID,然后将css代码从display ='none'更改为display ='block' – 2011-05-05 14:20:51