我是js對象的新手,我試圖在jQuery中編寫一個簡單的插件,但是我在聲明屬性時遇到了問題。
看看這個JSFIDDLE爲了更好地突出顯示的代碼在對象聲明中使用jQuery方法.find()
$.fn.robertSlider = function(params){
var slider = {
arrow: this.find(".slider-arrow"),
arrowNext: this.find(".slider-arrow--arrowNext"),
arrowPrev: this.find(".slider-arrow--arrowPrev"),
sliderItem: this.find(".slider-item"),
sliderList: this.find(".slider-content-list"),
itemsOnScreen: params.itemsOnScreen,
marginCollapse: params.marginCollapse
};
slider.amountItems = slider.sliderItem.length; // is there a way to declare this directly inside the obj?
slider.sliderWidth = slider.sliderList.width(); // is there a way to declare this directly inside the obj?
var helpers = {
firstVisible: 0,
canGoNext: true,
canGoPrev: false
}
}
$(".slider-container").robertSlider({
itemsOnScreen: 6,
marginCollapse: 10
});
現在我的問題是:什麼是錯與此對象的聲明?
因爲如果我嘗試登錄slider.sliderWidth
它不起作用,我得到null
。 我試圖登錄slider.sliderList
我得到一個完整的不同的結果,因爲我登錄$(".slider-content-list")
UPDATE
這裏的日誌slider.arrow
和$(".slider-arrow")
之間下面的截圖
希望一切都清楚了:)
在此先感謝!
「本」 是正確的。你可以在你的小提琴裏面發佈html嗎? –