1 设置元素及内容
样例:
alert(('#box').html()); alert(('#box').html()); alert(('#box').text()); //text获取的是文本,有html会自动被清理
('#box').html('<em>www.li.cc</em>'); //替换HTML内容,HTML会自动解析('#box').html('<em>www.li.cc</em>'); //替换HTML内容,HTML会自动解析('#box').text('<em>www.li.cc</em>'); //替换文本内容,有HTML会自动转义
alert((′input′).val());//获取表单value值('input').val('女'); //设置表单value值
$('input').val(['男', '女', '编程']); //根据表单value值选定对应选项
2 元素属性操作
样例:
alert(('#box').attr('id')); //获取key为id的属性值('div').attr('title', 'test'); //给div元素增加属性title='test'
$('div').attr({
'title' : 'test',
'class' : 'red',
'data' : '123'
});
备注:class不建议用attr来设置
$('div').removeAttr('title'); //删除title属性
jQuery中的很多方法都可以使用function(){}来返回字符串,比如:html()、text()、val()、is()、filter()等方法。如果涉及到多个元素集合的话,还可以传递index参数来获取索引值,并且可以使用第二个参数value来获取原始值。
(′div′).attr(′title′,function()return′我是域名′;);('div').attr('title', function (index, value) {
return '原来的title是:' + value + ',现在的title是:我是' + (index+1) + '号域名';
});
(′div′).html(('div').html() + '<em>www.li.cc</em>');
等效于:
$('div').html(function (index, value) {
return value + '<em>www.li.cc</em>';
});
3 元素样式操作
样例:
alert((′div′).css(′color′));//获取元素内CSS样式的样色('div').css('color', 'red'); //设置元素行内CSS样式颜色为红色
var box = $('div').css(['color', 'width', 'height']); //得到CSS样式的数组对象
备注:box[0]不能访问,只能box['color']
//逐个遍历出来
for (var i in box) {
alert(i + ':' + box[i]);
}
//采用jQuery遍历方法.each().each(box, function (attr, value) {
alert(attr + ':' + value);
});
//访问原生JavaScript对象数组
alert((′div′)[0]);('div').each(function (index, element) {
alert(index + ':' + element);
});
//设置多个样式
$('div').css('color', 'red').css('background-color', '#ccc');
等效于
$('div').css({
'color' : 'blue',
'background-color' : '#eee',
'width' : '200px',
'height' : '30px'
});
//需要计算值,传递匿名函数
$('div').css('width', function (index, value) {
return parseInt(value) - 500 + 'px';
});
(′div′).addClass(′red′);//添加一个CSS类('div').addClass('red bg size'); //添加多个CSS类
(′div′).removeClass(′bg′);//删除一个CSS类('div').removeClass('red size'); //删除多个CSS类
('div').click(function () {(this).toggleClass('red size'); //两个样式之间的切换,默认样式和指定样式的切换
});
//实现样式1和样式2之间的切换
('div').click(function () { //这里只是click的局部,而又是toggle的全局(this).toggleClass('red'); //一开始切换到样式2
if ((this).hasClass('red')) { //判断样式2存在后(this).removeClass('green'); //删除样式1
} else {
(this).toggleClass(′green′);//添加样式1//(this).addClass('green');
}
});
等效于:
('div').click(function () {(this).toggleClass(function () {
//局部
if ((this).hasClass('red')) {(this).removeClass('red');
return 'green';
} else {
$(this).removeClass('green');
return 'red';
}
});
});
4 CSS方法
样例:
alert((′div′).width());//获取元素高度,返回类型为number('div').width(500); //设置元素高度,直接传数值,默认加px
(′div′).width(′500px′);('div').width('500pt');
$('div').width(function (index, width) {
return width - 500 + 'px'; //虽然可以不加,会智能添加,但还是建议加上单位,更加清晰。
});
alert((′div′).offset().top);//相对于视口的偏移alert(('div').position().top); //相对于父元素的偏移
alert((window).scrollTop());//获取当前滚动条的位置(window).scrollTop(300); //设置当前滚动条的位置
本文转自stock0991 51CTO博客,原文链接:http://blog.51cto.com/qing0991/1359584,如需转载请自行联系原作者