# jQuery属性&CSS操作
# .val()
.val()方法主要用于获取表单元素的值,比如 input, select 和 textarea 当方法没有参数的时候返回input的value值,当传递了一个参数的时候,方法修改input的value值为参数值
$('input').val()
$('input').val('newValue');
# .attr()
.attr(attributeName)
获取元素特定属性的值
<div class='header'></div>
console.log( $("div").attr("class")) //header
.attr(attributeName,value)
.attr(attributesJson)
.attr( attributeName, function(index, attr) )
为元素属性赋值
<img id="greatphoto" src="brush-seller.jpg" alt="brush seller" />
$('#greatphoto').attr('alt', 'Beijing Brush Seller'); //设置单个属性
$( "#greatphoto" ).attr({
alt: "Beijing Brush Seller",
title: "photo by Kelly Clark"
}); //设置多个属性
$('#greatphoto').attr('title', function(i, val) {
return val + ' - photo by Kelly Clark'
}); //通过函数设置属性
# .removeAttr()
为匹配的元素集合中的每个元素中移除一个属性(attribute)
<div class="header"></div>
$('div').removeAttr('class'); //移除class属性
# .prop()
.prop( propertyName )
获取匹配的元素集中第一个元素的属性(property)值
.prop( propertyName, value )
为匹配的元素设置一个或多个属性(properties)
当设置selectedIndex
,tagName
, nodeName
, nodeType
, ownerDocument
, defaultChecked
, 或 defaultSelected
必须使用prop方法。从jQuery1.6开始,这些属性可以不再使用.attr()方法来设置。他们没有相应的属性(attributes),只有属性(property)。
# CSS相关
- ###.css() >用来处理元素的css
.css(propertyName)
.css(propertyNames)
获取元素style特定property的值
<style>
div{
width:100px;
height:200px;
color:yellow;
background-color:black;
}
</style>
$('div').css( "width" ); //"100px"
var styleProps = $('div').css([
"width",
"height",
"color",
"background-color"
]);
//{width: "100px", height: "200px", color: "rgb(255, 255, 0)", background-color: "rgb(0, 0, 0)"}
.css(propertyName,value)
.css( propertyName, function(index, value) )
.css( propertiesJson )
设置元素style特定property的值
$( 'div' ).css( "width", function( index ) {
return index * 50;
}); //通过函数设置属性
$('div' ).css( "width", "+=200" );
$('div' ).css( "background-color", "yellow" ); //设置单个属性
$('div' ).css({
"background-color": "yellow",
"font-weight": "bolder"
}); //设置多个属性
# .addClass()
'.addClass(className)'
.addClass(function(index,currentClass))
为元素添加class,不是覆盖原class,是追加,也不会检查重复
$( "p" ).addClass( "myClass yourClass" );
$( "ul li" ).addClass(function( index ) {
return "item-" + index;
});
# .removeClass()
removeClass([className])
removeClass(function(index,class))
移除元素单个/多个/所有class
$( "p" ).removeClass( "myClass yourClass" );
$( "li:last" ).removeClass(function() {
return $( this ).prev().attr( "class" );
});
# .hasClass()
.hasClass(className)
检查元素是否包含某个class,返回true/false
$( "#mydiv" ).hasClass( "foo" )
# .toggleClass()
在匹配的元素集合中的每个元素上用来切换的一个或多个(用空格隔开)样式类名。
<div class="tumble">Some text.</div>
$( "div.tumble" ).toggleClass( "bounce" ) //第一次执行
<div class="tumble bounce">Some text.</div> //执行结果
$( "div.tumble" ).toggleClass( "bounce" ) //第二次执行
<div class="tumble">Some text.</div> //执行结果