我同时在两个div中加载文件:#ajax_id和#ajax_col,问题是当我从其中一个加载的div中创建另一个链接时,其他链接不再工作了...这是我的代码:< / p>
$(document).ready(function() {
var api = $('#ajax_in').jScrollPane().data('jsp');
$('.aj4x').bind('click', function() {
var action = $(this).attr("rel");
api.getContentPane().load("ajax.php?id=" + action,
function() {
api.reinitialise();
return false;
});
$("#ajax_col").load("ajax.php?col=" + action,function() { return false; });
});
});
这就是我如何制作链接:
$('.bt').click(function() {
$("#ajax_in").load("ajax.php?id=form123", function() { return false; });
});
单击.bt后,内容将加载到#ajax_in中,但其余链接不再起作用(仅加载#ajax_col的那些)
我做错了什么?当我改变现场('点击')时,我可以使它工作,但我读到点击功能已经'实时'
答案 0 :(得分:1)
如果.bind
链接停止运行,请将.live
更改为.aj4x
。
如果.bt
个链接停止运行,请更改
$('.bt').click(
至$('.bt').bind('click',
重点是您引入了新链接,并且尚未为其分配事件处理。
使用.live()
允许此
说明:为所有匹配的元素附加事件处理程序 现在和现在的选择器 将来
回答您关于点击直播的补充内容。分配给.click(..)
或.bind('click',..)
的点击事件不会生效。当.click
或.bind
方法仅调用与当时与选择器匹配的元素时,将分配它们。新创建的元素将不具有处理程序,因此需要.live()
方法。