将facebox应用于使用Ajax显示的链接

Apply facebox to links displayed using Ajax

本文关键字:显示 链接 Ajax facebox 应用于      更新时间:2023-09-26

我有一个小问题。所以我有这个页面,在页面加载完成后使用jQuery Ajax加载动态内容。在页面的顶部是一个名为"添加新闻"的链接。当你点击那个链接时,一个facebox就会弹出。此链接是静态的,只在页面顶部显示一次。它的标记:

<a href="linktopage" rel='facebox[.xhr]'>Add News</a>

动态页面(从Ajax加载)列出DB中的所有现有新闻。它们的标签是:

<a href="linktonews?id=1" rel='facebox[.xhr]'>News 1</a>
<a href="linktonews?id=2" rel='facebox[.xhr]'>News 2</a>
<a href="linktonews?id=3" rel='facebox[.xhr]'>News 3</a>

等等…点击其中一个新闻项目,打开一个可以查看/编辑新闻的facebox。

每次添加新的新闻项时,动态内容重新加载而不刷新页面。

加载主索引页时,使用$('a[rel*=facebox]').facebox();实例化facebox的定义。

现在我的问题是,这个$('a[rel*=facebox]').facebox();并不适用于使用ajax加载的新闻内容。所以点击这些链接并不能打开facebox。我怎样才能做到这一点呢?

我也有同样的问题,所以我开始查看GitHub中的拉请求,发现:

https://github.com/dator/facebox/commit/5ce6a75927d81b9fff1eeff9b933f0ad93f12801

by Dator(感谢他!): D)

似乎拉请求还没有合并,我只是在我的facebox.js中改变了那行,它工作得很好:D

希望这对你有帮助