現在、jQuery タッチ カルーセルを作成中です。ただし、要素の高さ (または幅) を設定するときに少し問題が発生したようです。
以下は、関数からの関連コードです。
carousel = function( container, options )
{
this.settings = $.extend({
// General settings:
width: 600,
height: 400,
slides: 'div',
snapTo: true,
mouseSupport: true,
trackMovement: true,
slideWidth: 600,
slideHeight: 400,
// CSS classes:
wrapperCls: 'carousel_wrapper',
innerCls: 'carousel_scroll_inner'
}, options);
this.container = container;
this.scroller = null;
this.slides = this.container.children(this.settings.slides);
this.numSlides = this.slides.length;
this.scrollWidth = this.settings.width * this.numSlides;
this.container.addClass(this.settings.wrapperCls);
this.scroller = $('<div />').addClass(this.settings.innerCls);
this.container.wrapInner(this.scroller);
this.scroller.width(1500)
this.scroller.css('width', this.scrollWidth);
this.container.css({ width: this.settings.width, height: this.settings.height });
};
これは、次のようなことを行うことで呼び出されます。
$(function() {
var carousel1 = new carousel($('#myElement'));
});
#myElement
確実に存在し、エラーはスローされません。this.scroller
のコンテンツにラップされた正しい jQuery オブジェクトも含まれていますthis.container
。問題は、または関数this.scroller
を使用して CSS の幅または高さを設定できないことです。width()
height()
css()
私は何が欠けていますか?問題を示すためにjsFiddleをまとめました。要素インスペクタを確認すると、要素の寸法が更新されていないことがわかりますdiv.carousel_scroll_inner
。