我有一张照片,当我的鼠标在它上面时我想每2秒更换一次。 所以我写道:
$("#profilePic").mouseover(function() {
var t = setTimeout("pictureChanger()",2000);
});
这是功能:
function pictureChanger() {
currentPicture++;
currentPicture = currentPicture % NUM_PICTURES;
$("#profilePic").src = pictures[currentPicture];
}
它不起作用..但是当我在$("#profilePic").src = pictures[currentPicture];
的函数内写mouseover
时,它确实取代了图片。所以我猜问题是函数pictureChanger
..
如何修复它以便该功能将取代我的照片?
答案 0 :(得分:1)
使用.attr()
函数在jquery中设置属性:
$('#profilePic').attr('src', pictures[currentPicture]);
或者通过选择器从匹配元素数组中获取底层DOM元素:
$('#profilePic').get(0).src = pictures[currentPicture];
第一个是首选,因为如果选择器与任何DOM元素都不匹配,代码将会中断,而第一个示例则不会执行任何操作。
答案 1 :(得分:0)
尝试删除setTimeout中函数名称的()
和引号:
var t = setTimeout(pictureChanger,2000);