0

ギャラリー スライダーを作成しています。ほとんどのブラウザでは正常に動作していますが、IE では動作していません。Google chrome と firefox でテストしましたが、エラーは見つかりませんでした。正常に動作してい
ます。エラーの場所を教えてください。

`(関数($){

$.fn.AD_Slider = function(options)
{
    parent = this;
    parent.append('<span id="AD_slider_holder"></span>')
    $('#AD_slider_holder')
            .css
            (
                {
                    'position': 'absolute',
                    'bottom': '0px',
                    'left':'0px'
                }
            )
    no_of_items = 0;
    var settings = $.extend(
        {
            item_width: 200,
            animation_time: 1000,
            wait_time: 1000,
            slider_width:400,
            height:300
        },
        options
    );
    this.css
    (
        {
            'position':'relative',
            'width':  settings.slider_width + 'px',
            'height': settings.height + 'px',
            'border':'1px solid',
            'overflow':'hidden'
        }
    )
    $(this).children('div').each(function(){
        parent.children('#AD_slider_holder').append('<div />');
        parent.children('#AD_slider_holder')
            .each(
                function()
                {
                    $(this).children('div')
                        .css
                        (
                            {
                                'width':'10px',
                                'height':'10px',
                                'border':'1px solid',
                                'margin':'5px',
                                'float':'left'
                            }
                        )
                }
            )
        $(this).css
        (
            {
                'position': 'absolute',
                'top': '0px',
                'left': '0px',
                'width':settings.item_width,
            }
        );  
        $(this).hide();

    })
    parent.children('#AD_slider_holder').each(
    function(){
        $(this).children('div').click(
            function()
            {
                clearTimeout(animator_time_out);
                animate_next(parent,$(this).index());
            }
        );
    })
    animate_next(this);
};
function animate_next(parent,index_no)
{
    if(!index_no)
    {
        index_no = 0;
    }
    no_of_elements = parent.children('div').length;
    if(no_of_elements == index_no)
    {
        index_no = 0;
    }
    parent.children('div').fadeOut(); 
    parent.children('div:eq('+index_no+')').fadeIn(2000);
    parent
        .children('#AD_slider_holder')
            .each
            (
                function()
                {
                    $(this).children().css({'background':'none'})
                }
            )
    parent.children('#AD_slider_holder')
        .each(
            function()
            {
                $(this).children('div:eq('+index_no+')')
                    .css
                    (
                        {
                            'background':'red'
                        }
                    )
            }
        )
    index_no++;
    animator_time_out = setTimeout(function(){animate_next(parent,index_no)},5000)
}

})( jQuery );`

私は最新のjqueryを使用しています

4

1 に答える 1

3

正確にはわかりませんが、末尾のコンマを削除することをお勧めします

'width':settings.item_width,

    $(this).css
    (
        {
            'position': 'absolute',
            'top': '0px',
            'left': '0px',
            'width':settings.item_width,
        }
    );  

オブジェクトの最後の要素の後にコンマがある場合、InternetExplorerはそれを好みません。

于 2013-01-26T16:26:53.933 に答える