当用户将鼠标指针移到图片上时,使用javascript自动点击图片

时间:2014-02-26 17:41:25

标签: javascript mouseover

我的想法是当用户将鼠标指针移到图片上时自动点击图片的脚本。请指导我如何制作它。先谢谢你。

2 个答案:

答案 0 :(得分:0)

不是我支持这样的事情。但...

el = document.getElementById('lol');
el.onmouseover = function(){el.click();}

el.onclick = function(){
    //your code for having clicked the element
}

这是一个jsfiddle:http://jsfiddle.net/Rap6M/

但是!为什么不把你的代码放在onmouseover监听器中呢?特别是看到(虽然广泛接受)并非所有浏览器都支持el.click()

以下是MDN对click()的评价:https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement.click

注意到他们说:

  

但是,点击事件的冒泡不会导致<a>元素   启动导航就像收到真正的鼠标点击一样。

答案 1 :(得分:0)

听起来你想触发一个DOM mouse onclick事件,但是在鼠标悬停在某些元素上时(在这种情况下是图片)。

我的建议是,只要将鼠标悬停在图像上,就会触发事件(鼠标onclick)。只需在对象上有一个事件监听器来监听onmouseover事件,一旦检测到它,就会触发关于你需要的任何元素的点击事件。

看看这个:

<img id="my_image" src="myimage.png"></img>
<div id="my_clicky_div">My click event will be triggered</div>

<script type="text/javascript">
    $("#my_clicky_div").on("click", function() {
        console.log("My click event has been triggered!")
    })
    $("#my_image").on("mouseover", function() {
        $("#my_clicky_div").trigger('click');
    });
</script>

您可以创建图像标记和div。无论何时悬停(鼠标悬停)此图像,都会触发div的onclick事件。

为了方便起见,你应该将你需要触发的任何事件绑定到onmouseover事件上,你基本上绕过了一个步骤:

<img id="my_image" src="myimage.png"></img>
<script type="text/javascript">
    $("#my_image").on("mouseover", function() {
    // Instead of issuing another event, run the code that happens during the click event 
    });
</script>

请告诉我这是否有帮助!

参考文献: http://api.jquery.com/mouseover/http://api.jquery.com/trigger/http://api.jquery.com/on