我使用jQuery的一些很好的插件來使用基於AJAX的站點。現在我遇到了一個問題,我想用livequery來指定我的slimbox。問題是,它沒有得到我的組在linkFiler函數中所述。livequery不能與組一起工作
$(document).ready(function()
{
$('a[rel^="lightbox"]').livequery(function()
{
$(this).slimbox(null, function(el) // link mapper
{
return [el.href, el.title + '<br/><a href=\"' + el.href + '\">Download</a>'];
}
, function(el) // links filter
{
return (this == el) || ((this.rel.length > 8) && (this.rel == el.rel));
});
});
});
怎麼回事?在my pages(傳記)中的一箇中,slimbox僅在我刷新該網站上的頁面時才起作用,但在點擊我的頁面時不起作用。這些組不在網站的唱片部分工作。是生物和唱片圖片
配件如下:提前
<a href="albumCover.jpg" rel="lightbox-disco"><img src="albumCover_thumb.jpg" alt=""></a>
<a rel="lightbox" href="bandPic.png"><img style="float:right;margin-left:1em;" src="bandPic_thumb.png" alt=""></a>
謝謝!
UPDATE
我發現在slimbox代碼我的問題,因爲它使用了this
是它的鏈接。所以每次livequery被觸發,this
被覆蓋,應該實際上包含完整的選擇器。也許我可以只是說解決這個問題:
$('a[rel^="lightbox"]').livequery(function()
{
$('a[rel^="lightbox"]').slimbox(null, function(el) // link mapper
...
但這樣做會使火的liveQuery朝slimbox了很多次,這是不想要的行爲。有沒有更好的方法讓它不經常開火?
UPDATE2
至於傳記頁面的其他questio。 livequery更新刪除圖像,但所有其他網站都添加圖像正確完成...多麼奇怪...