JS悬停链接调用函数,但只有一次
JS hover link call function, but only once?
我有一个简单的html页面,有很多链接。
当一个链接被悬停在上面时,它调用一个函数dothis()
来改变页面上div的内容,但是我只想对每个链接运行一次这个函数,不管它被悬停了多少次。
例如,如果用户将鼠标悬停在特定的链接上,将鼠标移开并再次悬停,则不会再次加载该函数(每个链接都有1次悬停限制,因此用户可以将鼠标悬停在链接a上,然后链接B在悬停时仍然可以运行该函数(但每个链接只能运行一次))。
我已经加载了jquery,如果这使事情更容易。
有什么好主意吗?
use
.one()
jQuery API。
描述:为元素的事件附加一个处理程序。的对每个元素最多执行一次。
可以在mouseenter
上使用unbind
$("#elementID").mouseenter(function(e){
$(this).unbind(mouseenter);
});
或one
$("#elementID").one("mouseenter",function(){
//do something
});
我是这样做的:
当用户将鼠标悬停在链接上时,函数将检查内部变量。如果它为空,函数将设置内部变量,这样它就不会多次调用dothis()函数。
<!DOCTYPE html>
<html>
<head>
<title>Hover Once</title>
</head>
<body>
<a href="#" onmouseover="onHover(this)">Link 1</a>
<a href="#" onmouseover="onHover(this)">Link 2</a>
<a href="#" onmouseover="onHover(this)">Link 3</a>
<script>
function onHover(element) {
if(element.alreadyHovered == null) {
console.log("call dothis()");
element.alreadyHovered = true;
}
}
</script>
</body>
</html>
相关文章:
- 是否有脚本/代码可以一次将链接属性添加到多个链接
- 链接超时会导致最后一次超时被拒绝
- 如何使用javascript点击最后一个子链接
- Javascript函数每分钟更改一次链接
- 使用 JavaScript 向一组链接中的第一个链接添加一个属性
- 删除/隐藏链接后最后一次出现的字符串
- 如何使用 ajax 一次抓取一页,返回下一页链接并再次访问
- 从RSS链接每30秒更改一次网页
- 只写一次“return false”来处理点击许多链接
- 每个部分附加一次多个链接转换变量
- 一次更改所有链接
- 有没有一种方法可以包括<脚本>或者<link>在所有页面中显示一次
- 一张图片的多个标题-点击链接一次查看一个
- PHP如何从一次点击打开2个链接“_自我;以及“_空白“;不同的url's
- 颜色框在图像处有两个链接,但在组中显示一次
- 弹出窗口中的一组链接,用设置的文本填充特定命名的字段
- 自动点击'下一页'链接,在Chrome DevTools控制台推送数组
- 如何修改这个程序,我想得到下一页链接
- 重复几次链接添加和删除后,添加新的输入.为什么
- Javascript手风琴菜单,点击一次展开,点击两次链接