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



我的想法是一个脚本,当用户将鼠标指针移到图片上时,它会自动单击图片。请指导我如何制作。提前谢谢你。

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

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>元素 启动导航,就像收到真正的鼠标单击一样。

听起来您想触发 DOM 鼠标点击事件,但在鼠标悬停在某些元素(在本例中为图片)时。

我的建议是,只要您将鼠标悬停在图像上,就触发事件(鼠标点击)。只需在对象上有一个事件侦听器侦听 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

相关内容

  • 没有找到相关文章

最新更新