Jquery Live 与 Facebox 插件
我正在尝试将 jquery Facebox 插件与实时事件一起使用(官方实现,而不是插件)。
我的主页通过ajax加载到页面中。该远程页面还具有指向其他远程页面的链接,我想在弹出对话框中显示这些链接。我一直在使用 Facebox 插件来实现此目的。
下面的代码不起作用,只是将远程页面加载到新页面的视口中,而不是弹出窗口。
<script type="text/javascript">
jQuery(document).ready(function($) {
$('a[rel*=facebox]').live("click", function() {
$('a[rel*=facebox]').facebox()
});
});
</script>
这是使用现场活动的正确方法吗?
遗憾的是,我的开发机器仅包含 IE6[:(],因此我无法使用 firebug 来调试代码。
I'm trying to use the jquery facebox plugin with live events (the official implemenatation, not the plugin).
My main page loads in a page via ajax. That remote page also has links to other remote pages which i would like to display in a popup dialog. I've been using the facebox plugin for this.
The below code doesn't work, and simply loads the remote page in to the viewport a a new page, not a popup.
<script type="text/javascript">
jQuery(document).ready(function($) {
$('a[rel*=facebox]').live("click", function() {
$('a[rel*=facebox]').facebox()
});
});
</script>
is this the correct way to use live events?
My development machine sadly consists of IE6 only[:(], so i can't use firebug to debug the code.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
用 fabrik 评论补充 Kobi 的答案:
所以,你可以防止 Facebook 增加事件。
归功于科比。
complementing Kobi answer with fabrik comment:
so, you can prevent facebox multiply the events.
credits to kobi.
我猜想
click
事件来得太晚,无法启动 Facebox。这可能适用于
mousedown
(在我的测试中似乎没问题,但并不完全相同)我也推荐这个。我建议您在完成 AJAX 调用后激活 Facebox:
I guess the
click
event is too late to start the facebox.This might work with
mousedown
(seemed OK on my test, but it wasn't exactly the same)I would recommend this either. I suggest activating the facebox after you finish the AJAX call:
非常感谢,我遇到了麻烦,因为加载我的动态内容后
rel=facebox 似乎根本不起作用
我只是“重新激活”
jQuery(document).ready(function($) {
$('a[rel*=facebox]').facebox()
在
ajax.response 和瞧之后,我可以看到弹出的 Facebox 而不是链接中的页面。
非常感谢科比。
Thank you so much, I was having troubles, because after loading my dynamic content the
rel=facebox seemed not to work at all
I just "re activated"
jQuery(document).ready(function($) {
$('a[rel*=facebox]').facebox()
})
after the ajax.response and voilá I can see the facebox pop up instead of the page from the link.
Thank you a lot kobi.