简单的快速问题......
我有以下链接html:
<a href="http://www.site.com/" onmouseover="" />
我有一个 javascript 函数,我想将一些鼠标悬停信息动态地输入到该链接中。因此,假设如果调用了这个 javascript 函数,它就会变成这样:
<a href="http://www.site.com/" onmouseover="alert('howdy')" />
任何想法如何做到这一点?
简单的快速问题......
我有以下链接html:
<a href="http://www.site.com/" onmouseover="" />
我有一个 javascript 函数,我想将一些鼠标悬停信息动态地输入到该链接中。因此,假设如果调用了这个 javascript 函数,它就会变成这样:
<a href="http://www.site.com/" onmouseover="alert('howdy')" />
任何想法如何做到这一点?
添加名称属性并分配 onmouseover
<a href="http://www.site.com/" onmouseover="" name="xxx"/>
document.getelementsbyname('xxx').onmouseover = function() { alert('howdy') }
答案是,使用 setAttribute() javascript。
如果可以使用 jquery,请参见:http ://api.jquery.com/hover/
这比直接更改属性要好。您的 javascript 函数可以动态绑定/取消绑定鼠标悬停事件并执行您的警报调用。
否则,您的 javascript 函数将需要动态更改属性,但您需要解决浏览器差异以找到正确的元素,然后定位并修改 onmouseover 属性。
我想您想说:动态更改您的 href 属性信息,然后您可以通过 jquery 来完成
//Write code for prompt box and get value (when mouse-over)
$("a[href='http://www.google.com/']").attr('href', 'YOUR_GET_VALUE')
两个选项:
如果是小东西:
<a href="http://www.site.com/" onmouseover="this.href = 'http://stackoverflow.com'" />
如果您还有其他事情要做:
<script type="text/javascript">
function doSomething(elem) {
elem.href = 'http://stackoverflow.com';
}
</script>
<a href="http://www.site.com/" onmouseover="doSomething(this)">test</a>
或者如前所述:使用 jQuery 或任何其他框架让您的生活更轻松
以下每次都适用于 jQuery
首先是javascript:
$(document).on('mouseenter','.hovLink', function (e) {
e.preventDefault();
e.stopPropagation();
alert('entering ' + e.target.id);
}).on('mouseleave','.hovLink', function (e) {
alert('exiting ' + e.target.id);
});
这是HTML
<a href="/link" class="hovLink" id="link1">Link</a>