jQuery 函数

作者: 荷尔蒙榨汁机 | 来源:发表于2017-12-28 14:49 被阅读0次

Dom操作常用方法

.append()/.prepend()

.append()函数用于向每个匹配元素内部的末尾位置追加指定的内容
.prepend()函数用于向每个匹配元素内部的起始位置追加指定的内容。
指定的内容可以是:html字符串、DOM元素(或数组)、jQuery对象、函数(返回值)。

  $("p").append( '<p>插入段落</p>' )  // 插入DOM元素
  $('p').append($('strong')) // 插入jQuery对象,如果追加的内容是当前页面中的某些元素,那么这些元素将从原位置上消失。
//简而言之,这相当于一个移动操作,而不是复制操作。
  $('p').append(function(index){  // 插入function,函数传入两个参数:第一个参数就//是当前元素在匹配元素中的索引,
第二个参数就是该元素当前的内部html内容(innerHTML)
    return '插入段落' + index
  })
.before()/.after()

.before()函数用于在每个匹配元素之前插入指定的内容
.after()函数用于在每个匹配元素之后插入指定的内容。
指定的内容可以是:html字符串、DOM元素(或数组)、jQuery对象、函数(返回值)。

$('p').before('<i>somthing</i>')
$('p').after('$('#id')') //插入的内容是当前页面中的某些元素,那么这些元素将从原位置上消失。
  //简而言之,这相当于一个移动操作,而不是复制操作。
.remove()/.empty()

.remove()删除被选元素(及其子元素)
.empty()清空被选择元素内所有子元素

$('p').remove()
$('p').empty()
$('p').remove('.class') //通过添加选择器,可以进行过滤删除
.html()/.text()

.html()函数用于设置或返回当前jQuery对象所匹配的DOM元素内innerHTML
.text()函数用于设置或返回当前jQuery对象所匹配的DOM元素内innerText

<div>
  <p>段落1</p>
  <p>段落2</p>
</div>
$('div').html() 
 // 返回结果:
 "
  <p>段落1</p>
  <p>段落2</p>
"

$('div').text() 
// 返回结果:
"
  段落1
  段落2
"

属性操作常用方法

.val()

函数用于设置或返回当前jQuery对象所匹配的DOM元素的value值,该函数常用于设置或获取表单元素的value属性值。例如:<input>、<textarea>、<select>、<option>、<button>等。

$('input').val('somthing') //设置所有选中的input的value为somthing。
.attr()/.prop()

.attr().prop()函数都用于设置或返回当前jQuery对象所匹配的元素节点的属性值。
两者使用上的区别是:对于HTML元素本身就带有的固有属性,在处理时,建议使用prop方法。对于HTML元素我们自己自定义的DOM属性,在处理时,建议使用attr方法。

<input id="chk1" type="checkbox" action='123' >


// .prop()用于设置或获取指定DOM元素(指的是JS对象,Element类型)上的属性(property)
$("#chk1").prop("action") // undefined
document.querySelector('#chk1').action  // undefined
// .attr()用于设置或获取指定DOM元素所对应的文档节点上的属性(attribute)
$('#chk1').attr('action') // '123'
document.querySelector('#chk1').getAttribute('action')  // "123"

$("#chk1").prop("checked")  // false
$("#chk1").attr("checked") // undefined
document.querySelector('#chk1').checked //false
document.querySelector('#chk1').getAttribute('checked') //null

//勾选checkbox后 .attr()函数不会更新
$("#chk1").prop("checked")  //true
$("#chk1").attr("checked")  //undefined
document.querySelector('#chk1').checked //true
document.querySelector('#chk1').getAttribute('checked')  //null
.removeAttr()

函数用于移除在当前jQuery对象所匹配的每一个元素节点上指定的属性

$('img').removeAttr('alt') //删除所有img标签中的alt属性
.css()

函数用于设置或返回当前jQuery对象所匹配的元素的css样式属性值。

$('div').css('fontSize', '20px') //设置
$('div').css('fontSize') //获取
.addClass() /.removeClass()/.toggleClass()

.addClass()函数用于为当前jQuery对象所匹配的每一个元素添加指定的css类名。
.removeClass() 移除当前jQuery对象所匹配的每一个元素上指定的css类名。
.toggleClass()切换当前jQuery对象所匹配的每一个元素上指定的css类名。

$('div').addClass('clearfix') //增加clearfix类
$('div').removeClass('clearfix')  //删除clearfix类
$('div').toggleClass('clearfix') //切换clearfix类
.hasClass()

指示当前jQuery对象所匹配的元素是否含有指定的css类名。返回值是Boolean类型

$('div').hasClass("bar")

其他常用函数

.each()

函数用于以当前jQuery对象匹配到的每个元素作为上下文来遍历执行指定的函数。所谓的上下文,意即该函数内部的this指针引用了该元素。

$("ul li").each(function(index, element){
    // this === element
    $(element).html( "编号" + (index + 1) );  
});
$.extend()

函数用于将一个或多个对象的内容合并到目标对象。

var x = { name:"CodePlayer" };
var y = { age: 18 };
var z = { site: "www.365mini.com"  };

// y和z的属性将被合并复制到对象x上
var obj = $.extend( x, y, z );
.clone()

函数用于克隆当前匹配元素集合的一个副本,并以jQuery对象的形式返回

$('div').clone()
.index()

函数用于获取当前jQuery对象中指定DOM元素的索引值。

$('li').index($('li.active'))
.ready()

函数用于在当前文档结构载入完毕后立即执行指定的函数。

$(document).ready( function(){
  alert('hello world')
});

相关文章

网友评论

    本文标题:jQuery 函数

    本文链接:https://www.haomeiwen.com/subject/kstpgxtx.html