javascript - 使用 jquery 根据页面上 div 的数量更改 div 的宽度

标签 javascript jquery css arrays dynamic

更新:修改并编辑了你们在下面指出的一些明显问题。我变暖和了吗?

$(document).ready(function(){

   var totaldivs = $('.feature').length;

   if (totaldivs == 3){

removeClass().addClass('three-features');

   } else if(totaldivs == 2){

removeClass().addClass('two-features');

   } 

});

我是 JavaScript/JQuery 的新手,所以也许我在这里尝试做的事情有悲剧性的缺陷,但我想制作一个脚本来检查页面上有多少个特定类的 div 并进行更改这些 div 的宽度基于存在的数量。我计划通过在检查 div 数组的长度后将 div 的类更改为具有不同宽度的类来做到这一点。

我哪里出错了?

我知道我必须为 IE 中的 getElementsByClassName 找出另一种解决方案。

这是我的 js:

var totaldivs = document.getElementsByClassName('feature');

$(document).ready(function(){

    if (features.length==3){

    $('.features').removeClass().addClass('three-features');

  } else if(features.length==2){

    $('.features').removeClass().addClass('two-features');

  } 

});

这是我的 CSS

.feature {
float: left;
}
.two-features {
float: left;
width: 100px;
}
.three-features {
float: left;
width: 50px;
}

最佳答案

确保在文档准备好后分配总的 div。

$(document).ready(function(){    
    var totaldivs = $('.feature').length;
    // and do something smarter like @Blender pointed out
}

附言: 使用 Jquery 设计样式总是一个坏主意,当您的应用程序扩展时,它会杀死您。
考虑像这样使用 css:
显示:表格单元格等

关于javascript - 使用 jquery 根据页面上 div 的数量更改 div 的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17847102/

相关文章:

javascript - 可以用我自己的自定义图像替换光标吗?

jquery - Bootstrap 侧边栏 visible-xs

html - Float left 在 ipod、android 智能手机等移动设备上不起作用

javascript - 表格单元格内的 Bootstrap 日期选择器未正确显示

javascript - 使用 jQuery 标记复选框时避免双击

javascript - 我的代码中的 Jquery 删除行表错误

javascript - 在可排序的 JQuery UI 列表中至少保留一项

javascript - 实时点击显示另一个 div

javascript - 动态更改 Highcharts 中的系列颜色

javascript - 使用两个ajax调用在两个html表中填充数据