如何让网页上的所有链接都调用javascript函数?
我通过 AJAX 在我的网站上加载不同类型的内容。
我有一个 javascript 函数,它将根据 URL 决定是否在 iframe 或新选项卡中打开链接。但问题是如何让所有链接都调用该 javascript 函数?
我尝试过:
<base target= processurl()/>
有什么想法吗?
谢谢
编辑: JQUERY 方法效果很好。但它只适用于一个链接?当我第一次单击链接时,它会正确调用该函数。但此后我点击的任何其他链接都没有任何反应。
I load different types of content through AJAX on my website.
I have a javascript function that will decide whether to open the link in an iframe or new tab based on the URL. But the question is how do I make all links call that javascript function?
I tried:
<base target= processurl()/>
Any ideas?
Thanks
EDIT:
The JQUERY method works great. But it only works for one link? When I click a link the first time, it calls the function correctly. But any other links I click on after that, nothing happens.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用 jQuery < 1.7:
请注意,jQuery 1.7 更喜欢使用
.on
而不是.live
:using jQuery < 1.7:
Note that jQuery 1.7 prefers the use of
.on
instead of.live
:有(至少)两种方法可以解决此问题(取决于它如何与您的 Ajax 代码配合):
target
属性。所以第一种方法:
注意
.on()
方法 适用于jQuery 版本 >= 1.7,因此对于较旧的 jQuery,请使用.delegate()
方法< /a> 或对于真正旧的 jQuery 使用.live()
方法。第二种方式(假设页面首次加载时链接全部存在):
There are (at least) two ways you could approach this (depending on how it fits in with your Ajax code):
target
attribute as appropriate.So the first way:
Noting that the
.on()
method applies from jQuery version >= 1.7, so for older jQuery use the.delegate()
method or for really old jQuery use the.live()
method.The second way (assumes links all exist when page is first loaded):