即,我有两个文件:
在index.php中我加载我的CSS和JS:
<head><link href="css/web.css" rel="stylesheet" type="text/css" /></head>
<body><script src="js/web.js" type="text/javascript"></script></body>
现在,我正在做的是在“js / web.js”中使用load()事件加载“some-content.php”:
$("#content").load('some-content.php');
长话短说:
当我加载“some-content.php”时,它继承了css / web.css中所有必需的CSS样式,而不必在“some-content.php”中包含另一个链接href
但是JS脚本似乎都没有工作 - 存储在js / web.js中的那些在index.php中存在的脚本
我强行补充:
<script src="js/web.js" type="text/javascript"></script>
再次在“some-content.php”中?
由于
答案 0 :(得分:3)
您正在将工具提示绑定到页面加载时的元素。添加新内容时,需要将工具提示绑定到新添加的元素。您可以在ajax调用的回调函数中执行此操作,例如:
$("#content").load('some-content.php', function() {
$(this).find("[rel='tooltip']").tooltip();
// or put stuff like that in an initialization function and call that instead...
});
答案 1 :(得分:2)
这通常是因为您使用直接绑定绑定事件,例如......
$('.myClass').click(function () {
//...
});
这仅适用于此绑定运行时存在的.myClass
个元素。
如果您想申请稍后将添加到DOM的元素,请使用更具动态性的on
绑定。
$(document).on('click', '.myClass', function () {
//...
});
您也可以更具体 - 而不是使用document
- 但这是出于示例的目的。
答案 2 :(得分:1)
.load()
是一个加载动态内容的AJAX方法。
将on()
用于动态生成的内容
$('selector').on('event',function(){
//something
});
示例:
$( "#data" ).on( "click", function() {
alert( $( this ).text() );
});
详细了解.on()