我想知道默認配置對象的以下屬性的用途。根據github上的文檔:featherlight.js tagetAttr和自動啓動功能
默認情況下,Featherlight在文檔就緒時初始化與defaults.selector匹配的所有元素。如果您想防止這種情況,請在DOM準備好之前將$ .featherlight.defaults.autostart設置爲false。
並在「綁定羽毛的部分」:
然後,它會尋找targetAttr(默認爲「數據輕如羽毛」)這個元素,並使用它的價值的發現將是內容單擊元素時將其打開爲燈箱。
給上述兩個,我想:
- 停止加載輕如羽毛,並在啓動時初始化本身
- 而不是使用數據羽毛的-XXX的屬性,使用的數據我,燈箱-xxx屬性。
所以我做了以下內容:
在我的javascript中,onReady()函數之前,我補充說:
$.featherlight.defaults.autostart=false;
和
$.featherlight.defaults.targetAttr='data-my-lightbox';
但是,設置自動啓動對虛假似乎沒有任何影響。如果我看到來源,我也沒有看到任何參考。雖然有一個'autoBind'變量。
接下來,我嘗試設置數據-MY-收藏屬性錨標記:
<a href="#" data-my-lightbox="my-image-gallery.html" ...>
,也試過:
<a href="my-image-gallery.html" data-my-lightbox="iframe" ...>
,但它似乎像這樣被忽略爲好。直到我做了以下內容:
$('[data-my-lightbox]').featherlight();
在這似乎是合乎邏輯的方式,但我的印象是,如果我改變onReady之前默認的屬性,其餘的將水到渠成。然後我發現了autoBind變量(onReady()之前)。
$.featherlight.autoBind='[data-my-lightbox]';
$.featherlight.defaults.targetAttr='data-my-lightbox';
,且無需對明確$(..)的作品如羽毛的結構。迄今爲止都很好。
但是,似乎iFrame的寬度/高度屬性應該仍然是data-featherlight-xxxxx而不是data-my-lightbox-xxxx ..或許歸因於源以下行:
var match = this.name.match(/^data-featherlight-(.*)/);
如果我修改成類似:
var matchRegEx = RegExp("^"+targetAttr+"-(.*)");
var match = this.name.
,並更新相關地方的代碼?
感謝您的幫助和幫助。
感謝您指出這些問題。 – 2015-03-08 19:48:06