我的MasterPage <head>
标记中包含一个jQuery脚本,只要在导航栏中按下链接就会运行该标记。 (我已经在任何锚标签上触发了。)
所以我在思考:因为它会触发任何锚标记,它也会触发段文件中的锚标记(包含少量HTML并使用AJAX插入的文件),但事实并非如此。 让它工作的唯一方法是将JavaScript文件包含在所有段页面中。
例如: 炫魅:
<br>
html
<br>
head<br> script src="script.js"/script<br>/head
<br>
body
div class="container"/div
将所有部分html文件加载到容器中。
因此,人们会认为它们也共享相同的<head>
,因为整页仍包含相同的标题。
但脚本不起作用?
答案 0 :(得分:2)
您必须使用特定版本的on()
将事件委派到所有当前和未来的锚元素:
$(function() { // dom-ready
$(document).on('click', 'a', function(e) {
// handle click
});
})
答案 1 :(得分:-1)
如果您动态加载内容,则不会挂钩事件。使用“on”事件而不是“click”。
这将是:
$( "a" ).on( "click", function() {
alert( $( this ).text() );
});