jquery php动态分配css值
我在一个未排序的列表中有一些图像jquery php动态分配css值,php,jquery,css,Php,Jquery,Css,我在一个未排序的列表中有一些图像 <ul> <li id='chain'> <a href=""> <span class='fade'></span> <div class='title'>TITLE</div> <img src="img/bike/chain.jpg" alt="" width="550"
<ul>
<li id='chain'>
<a href="">
<span class='fade'></span>
<div class='title'>TITLE</div>
<img src="img/bike/chain.jpg" alt="" width="550" height="440" />
</a>
</li>
<li id='grips'>
<a href="">
<span class='fade'></span>
<div class='title'>TITLE</div>
<img src="img/bike/grips.jpg" alt="" width="275" height="440" />
</a>
</li>
<li id='tires'>
<a href="">
<span class='fade'></span>
<div class='title'>TITLE</div>
<img src="img/bike/tires.jpg" alt="" width="175" height="220" />
</a>
</li>
</ul>
问题:我可以使用jQuery动态创建css吗?如果没有,如何使用PHP创建此css并分配宽度值?列表项将经常更改,我希望使用循环或.each语句。
换句话说,我不想列出每一项
有没有办法拉取li ID和IMG维度并动态创建css
伪代码:
var w = $('ul li').each(find img width).assign it to> .css(this .fade, this .title {width:w + "px"});
或我是否应该查看php以响应每个ul li IMG的输出?以下是使用jQuery的方法:
$('li').each(function(){
var $li = $(this);
var $img = $li.find('img');
var width = $img.attr('width');
$li.find('.fade, .title').css('width', width + 'px');
});
或者去掉jQuery,只使用css:
li{浮动:左;清除:左;}
以下是使用jQuery的方法:
$('li').each(function(){
var $li = $(this);
var $img = $li.find('img');
var width = $img.attr('width');
$li.find('.fade, .title').css('width', width + 'px');
});
或者去掉jQuery,只使用css:
li{浮动:左;清除:左;}
好的,试试这个:
$('li').each(function(){
var width = $(this).find('IMG').width();
$(this).find('.fade').width(width);
$(this).find('.title').width(width);
});
好的,试试这个:
$('li').each(function(){
var width = $(this).find('IMG').width();
$(this).find('.fade').width(width);
$(this).find('.title').width(width);
});
jQuery允许您轻松创建内联CSS样式(应用于每个元素的样式) 以下是此脚本正在执行的操作
.each()
迭代所有选定元素<代码>索引,顾名思义,是迭代数组的索引<代码>元素是正在迭代的当前元素
$('.fade',元素)
这将查找元素中的fade
类
.width()
将获取或设置元素的宽度。如果向其传递参数,则将设置该参数,例如:.width(15)
。(这会将元素的宽度设置为15像素宽。)如果未向元素传递任何内容,它会检索元素的宽度,例如:.width()
$('img',element).width()
检索元素内img标记的宽度。由于此值被传递到$('.fade',element).width()
,因此它将设置具有img的fade-to-width类的元素。jQuery允许您轻松创建内联CSS样式(应用于每个元素的样式)
以下是此脚本正在执行的操作
.each()
迭代所有选定元素<代码>索引,顾名思义,是迭代数组的索引<代码>元素是正在迭代的当前元素
$('.fade',元素)
这将查找元素中的fade
类
.width()
将获取或设置元素的宽度。如果向其传递参数,则将设置该参数,例如:.width(15)
。(这会将元素的宽度设置为15像素宽。)如果未向元素传递任何内容,它会检索元素的宽度,例如:.width()
$('img',element).width()
检索元素内img标记的宽度。因为这个值被传递到$('.fade',element).width()
,它会将元素的fade类设置为img的width。但是这可以通过循环或某种类型的自动化来完成吗?我不想写一长串的改变了的项目,但我不知道你在找什么。如果不创建每个项目的列表,你会怎么写this@t问:如果不为自动化提供某种“处理”,恐怕您无法创建自动化;你必须想出一种方法来命名你的类和ID,这样你就可以用某种方法来遍历它们。我不明白你的意思。你怎么知道哪个
内容的宽度是多少?但这可以通过循环或某种类型的自动化来实现吗?我不想写一长串的改变了的项目,但我不知道你在找什么。如果不创建每个项目的列表,你会怎么写this@t问:如果不为自动化提供某种“处理”,恐怕您无法创建自动化;你必须想出一种方法来命名你的类和ID,这样你就可以用某种方法来遍历它们。我不明白你的意思。你怎么知道哪个
内容的宽度是多少?这与写下你所说的拉取li ID和IMG维度的CSW是一样的?这与写下你所说的拉取li ID和IMG维度的CSW是一样的?尽管如此,有必要这样做吗?如果将宽度:100%
指定给.fade
和.title
,则浮动以收缩包装它们,并让图像大小设置
的宽度,它应该可以正常工作。但是否有必要这样做?如果将宽度:100%
指定给.fade
和.title
,则浮动以收缩包装它们,并让图像大小设置
的宽度,它应该可以正常工作。
$('#chain, #grips, #tires').each(function(index, element){
$('.fade', element).width( $('img', element).width() );
});