如何使用jquery更改数组中对象的宽度

如何使用jquery更改数组中对象的宽度,jquery,Jquery,我的html代码中有如下元素: <DIV id="slideshow-container"> <DIV id="slideshow"> <ul> <li>...</li> <li>...</li> <li>...</li> </ul> </DIV>

我的html代码中有如下元素:

<DIV id="slideshow-container">
    <DIV id="slideshow">
        <ul>
            <li>...</li>
            <li>...</li>
            <li>...</li>
        </ul>
    </DIV>
</DIV>  

现在,我将获取li元素并使用jquery设置其宽度。但我的代码不起作用。
以下是我的代码:

var slides = $('#slideshow li');
var w=$('#slideshow').width();

for(var j=0;j<slides.length;j++){
    slides.get(j).css('width',w);
}
var slides=$(“#slideshow li”);
var w=$(“#幻灯片放映”).width();
对于(var j=0;j变化

 slides.eq(j).css('width',w);

x.width()返回80

css
中,它应该与
单元一起使用

x.css('width','80px')
改变

 slides.eq(j).css('width',w);

x.width()返回80

css
中,它应该与
单元一起使用

x.css('width','80px')
slides.get(j)
为每个
  • 返回DOM对象,而不是jQuery对象

    这应该起作用:

    $( slides.get(j) ).css('width',w);
    
    或者,代替
    循环的

    slides.each(function () {
        $(this).css('width', w);
    });
    
    slides.get(j)
    为每个
  • 返回DOM对象,而不是jQuery对象

    这应该起作用:

    $( slides.get(j) ).css('width',w);
    
    或者,代替
    循环的

    slides.each(function () {
        $(this).css('width', w);
    });
    

    您正在创建这些元素的数组,但实际上必须在视图中更改它们,使用
    每个
    并修改

    var w=$('#slideshow').width();
    $("#slideshow ul li").each(function() {
        $(this).css("width", w);
    });
    

    您正在创建这些元素的数组,但实际上必须在视图中更改它们,使用
    每个
    并修改

    var w=$('#slideshow').width();
    $("#slideshow ul li").each(function() {
        $(this).css("width", w);
    });
    
    我会改变:

    for(var j=0;j<slides.length;j++){
        slides.get(j).css('width',w);
    }
    
    我会改变:

    for(var j=0;j<slides.length;j++){
        slides.get(j).css('width',w);
    }
    
    试着替换

    for(var j=0;j<slides.length;j++){
        slides.get(j).css('width',w);
    }
    
    试着替换

    for(var j=0;j<slides.length;j++){
        slides.get(j).css('width',w);
    }
    
    事实上,这

    slides.css('width', w);
    
    …应该足够了。因为
    .css
    用作设置器,引用:

    …为每个匹配的元素设置一个或多个CSS属性

    实际上,这

    slides.css('width', w);
    
    …应该足够了。因为
    .css
    用作设置器,引用:

    …为每个匹配的元素设置一个或多个CSS属性

    .

    jQuery解决方案(速度较慢,更易于实现) 如果站点中的其他内容需要jQuery,而速度并不是您真正关心的问题,那么以下是jQuery实现相同结果的方法:

    $("#slideshow li").width(w);
    

    非jQuery解决方案(更快) jQuery比简单的javascript dom操作要慢得多

    为您需要的javascript创建一个简单的库-重用很好。 jQuery是一个非常大的库,用于完成如此简单的操作。
    注意:示例使用名称空间。封装更好,但名称空间是一个好的开始

    jQuery解决方案(速度较慢,更易于实现) 如果站点中的其他内容需要jQuery,而速度并不是您真正关心的问题,那么以下是jQuery实现相同结果的方法:

    $("#slideshow li").width(w);
    

    非jQuery解决方案(更快) jQuery比简单的javascript dom操作要慢得多

    为您需要的javascript创建一个简单的库-重用很好。 jQuery是一个非常大的库,用于完成如此简单的操作。
    注意:示例使用名称空间。封装更好,但名称空间是一个好的开始