js改变div背景图片

js更换图片,鼠标onmouseover,onmouseout事件激发后,图片消失了,点击后又恢复原来的那种,根本没更换
function turnOn() {
var LB1 = document.getElementById("lightBulb1");
var LB2 = document.getElementById("lightBulb2");
LB1.style.backgroundImage = "url('../Images/lightedBulbs.gif')";
LB2.style.backgroundImage = "url('../Images/lightedBulbs.gif')";
}
function dimIt() {
var LB1 = document.getElementById("lightBulb1");
var LB2 = document.getElementById("lightBulb2");
LB1.style.backgroundImage = "url('../Images/dimedBulbs.gif')";
LB2.style.backgroundImage = "url('../Images/dimedBulbs.gif')";
}

第1个回答  2013-08-27
代码可以更多些,比如你激活的部分也放出来,有助于给你分析。追问

已经补全问题,你能不能分析出来?

追答

我没有看到你所谓鼠标onmouseover,onmouseout激活了。
turnOn()、dimIt()函数都没有看到你使用,说明一下你激活使用的地方?

追问

我后来把它删了,就是:
onmouseover="lightUp();" onmousedown="dimIt();"

追答

你网站上线了吗?如果上线了,我看着比较直接。我觉得这个js特效忒简单不过,不应该出现这样的问题,以下是对问题的分析:
第一:图片路径问题,或是对了或者用得不合适
第二:lightBulb1和lightBulb2两个div样式的问题

第三:就是运用的问题了如果你要实现滑过换背景那么如果你的函数是turnOn()
滑过:onmouseover="turnOn()"
移除:onmouseout="dimIt()"
代码将如:
同理:

第四:这个问题是js冲突,前提是id号为lightBulb1和lightBulb2两个div在别的地方被绑定过事件,这个恐怕情况很少。
希望以上能帮助你。。。

追问

没有上线,我觉得最有可能的是两个div的样式问题,其他的没问题,都检查过了,新建网页测试了路径和js激发都没问题,独独放到listview动态生成的input按钮里面就不行
要么是listview动态生成的input按钮的影响,要么就是那两个div样式,头疼,明明很简单的js就这么纠结

追答

动态生成button和这两div怎么了?有联系?

追问

我是要鼠标onmouseover这个某个动态生成的input, 假设listview根据绑定数据动态生成了四个按钮,我移到第三个input按钮,两边的两个div里的灯泡就从该位置往下亮起,移到第二个input按钮,就从第二个的位置往下亮起,移开就不亮
可现在光是换张图片都没换成。。。

第2个回答  2013-08-27
检查要更换的图片文件名是否一致
第3个回答  2013-08-27
只看这两个方法是可以实现背景图的切换的,你说的情况应该是其他代码问题。
第4个回答  2013-08-27
有没有在页面开始引用jquery-1.8.0.min.js这个js?追问

没有,这个页面没有引用任何js文件。。。刚才把

这部分内容提到updatePanel3 外面了,还是同样的情况(点击后原来的图片消失了,要更换的还是没换上),应该不是updatepanel的原因

追答

哦,忘记了,你的是js,不是用jQuery写的!如果是用jQuery写,你要先引用jQuery的版本,比如jquery-1.8.0.min.js这个是最新版本,然后才可以写jQuery代码!js我就不是很清楚怎么写了!不好意思啊!

相似回答