扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
当前节点的父节点这样表示: $(this).parent();//$(this)表示当前节点。
创新互联公司服务项目包括永清网站建设、永清网站制作、永清网页制作以及永清网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,永清网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到永清省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
这样以后就可以对父节点进行属性的修改了:$(this).parent().css('display','block');
//JQuery 原来是有准备添加一个判断一个节点是否含有某个属性的方法的。出于某些原因,没有去实现这个方法
//可以参考:
//不过你仍然可以使用现有的方法来达到目的:
if($(selecter).attr('attr')){
//attr()方法,可以获取一个节点上的指定属性(一个参数,二个参数为设置属性值)。
//可以判断,attr()方法的返回值判断是否含有某个属性
//Do Something here ...
}
比如说父节点的Id是xxx,里面有个子节点的yyy属性的值是zzz,则
$("#xxx [yyy=zzz]")
或者父节点已经获取到变量x中,则
$("[yyy=zzz]",x)
直接通过a id = "displayDelete" class="aDelete" onclick="Delete(this);" href="JavaScript:void(0);"Delete/a中的ID号来找不就行了吗?
$("#displayDelete")
而且你要在什么地方用?如果是 Delete(this) 函数中用的话 你的 this指针已经将该元素通过形参的方式传递到了函数Delete中啊
function Delete(element){
//这个时候通过下面这个就可以调用到上面这段 并且可以是用jQuery方法
$(element);
}
1、jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式。
①、attr(属性名) //获取属性的值(取得第一个匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。如果元素没有相应属性,则返回 undefined )
②、attr(属性名, 属性值) //设置属性的值 (为所有匹配的元素设置一个属性值。)
③、attr(属性名,函数值) //设置属性的函数值 (为所有匹配的元素设置一个计算的属性值。不提供值,而是提供一个函数,由这个函数计算的值作为属性值。)
④、attr(properties) //给指定元素设置多个属性值,即:{属性名一: “属性值一” , 属性名二: “属性值二” , … … }。(这是一种在所有匹配元素中批量设置很多属性的最佳方式。 注意,如果你要设置对象的class属性,你必须使用'className' 作为属性名。或者你可以直接使用'class'或者'id'。)
2、那么怎么删除属性呢?
jquery中删除属性的关键词是: removeAttr 注意A是大写的. 看看怎么用的:
同样是用法一中的html代码, 我想删掉li的title属性, 那么就这样:
script
$("ul li:eq(1)").removeAttr("title");
/script
就这么简单, attr 其实就是原生js中 getAttribute 的简化实现, 而removeAttr 就是 removeAttribute 的简写了。
3、那么是否有跟attr()相似的属性呢?
jquery中val()与之类似,
$(this).val();获取某个元素节点的value值,相当于$(this).attr("value");
$(this).val(value);设置某个元素节点的value值,相当于$(this).attr("value",value);
属性:
获得标签:$("#id")
获得标签内的代码:.html()
获得标签内的文本:.text()
修改标签内的代码:.html("内容");
修改标签内的文本:.html("内容");
获得标签属性:.attr("属性");
修改标签属性:attr("属性","属性值");
添加样式:addClass("样式名");
动态切换样式:toggleClass("样式名");
获取样式:css
添加元素:append("元素");
移去元素:.remove();
清空节点: .empty();
获取第二个li节点: var $li=$("ul li:eq(1)");
获取第二个li节点的文本内容: var li_txt=$
方法:
一:插入节点:
append() 向每个匹配的元素文本内部的后面追加内容
eg:p我想说:/p
代码:
$("p").append("b你好/b");
结果为:p我想说:b你好/b/p
appendto() 将所有的匹配的元素追加到指定的元素中。实际上,使用该方法是颠倒了常规的$(A).append(B)的操作,即不是B追加到A中,而是将A追加到B文本的后面中。
eg:p我想说:/p
代码:
$("b你好/b").appendTo("p");
结果为:p我想说:b你好/b/p
prepend() 向每个匹配的元素文本的内部前置内容。
eg:p我想说:/p
代码:
$("p").prepend("b你好/b");
结果为:pb你好/b我想说:/p
prependto() 将所有的匹配的元素前置到指定的元素中。实际上,使用该方法是颠倒了常规的$(A).append(B)的操作,即不是B前置到A中,而是将A前置到B中
eg:p我想说:/p
代码:
$("b你好/b").prependto("p");
结果为:pb你好/b我想说:/p
after() 向每个匹配的元素之后插入内容 。
eg:p我想说:/p
代码:
$("p").after("b你好/b");
结果为:p我想说:b你好/b/p
insertAfter 将所有的匹配的元素插入到指定的元素后面。实际上,使用该方法是颠倒了常规的$(A).append(B)的操作,即不是B插入到A后面,而是将A插入到B后面。
eg:p我想说:/p
代码:
$("b你好/b").after("p");
结果为:p我想说:b你好/b/p
before() 在每个匹配的元素之前插入内容
eg:p我想说:/p
代码:
$("b你好/b").after("p");
结果为:p我想说:b你好/b/p
insertBefore():将A标签插入到B标签的前面
二:删除:
①remove 该节点所包含的所有的后代节点将同时被删除 也可以通过参数来选择
②empty 清空节点,它能清空元素中的所有后代节点
三:替换节点:
①replaceWith() 作用是将所有匹配的元素都替换成指定的HTML或DOM元素
②replaceAll()
四:包裹节点:
①warp() 作用是是将所有元素进行单独包裹
②warpAll() 作用元素的是所有匹配的元素用一个元素来包裹
③warpinner() 作用是将每一个的子内容(包括文本节点)用其他结构化的标记包裹起来
五:设置和获取HTML、文本值
1、html():
2、text
3、val
六:遍历节点
1、children(): 取得匹配元素的子元素
2、next():取得匹配元素后面紧邻的同辈元素
3、prev():取得匹配元素前面紧邻的同辈元素
4、siblings():取得匹配元素前后所有的同辈元素
5、closest():取得最近的匹配元素
七:css-dom
css 获取样式的属性
offset()
position
scroll
scrollLeft
样式操作:
1:获取样式和设置样式 attr
eg:p class="myClass" title="选择你最喜欢的水果"你最喜欢的水果是?/p
获取样式: var p_class=$("p").attr("class");
设置样式:$("p").attr("class","high");
2:追加样式 addClass
style
.high{
font-weight:bold 粗体字
color:red 字体颜色
}
.another{
font-weight:italic 斜体字
color:blue 字体颜色
}
/style
追加样式:
$("input:eq(2)").click(function(){$("p".addClass("another"))})
☆在css中有以下规定:
①如果给一个元素添加了多个class值,那么就相当于合并了他们的样式
②如果不同的class设置了同一样式,则后者覆盖前者
addClass attr
对同一个网页元素进行操作 ptest/p ptest/p
第一次使用 $"p".addClass("high"); $"p".attr("class","high");
第一次结果 p class="high"test/p p class="high"test/p
再次使用 $"p".addClass("another"); $"p".attr("class","another");
最终结果 p class="high another"test/p p class="another"test/p
3:移除样式 removeClass
p class="high another"test/p
移除一个:$"p".removeClass("high");
移除二个:$"p".removeClass("high").removeClass("another");==$"p".removeClass("high another")
移除全部:$"p".removeClass();
4:切换样式 toggle
5:判断是否含有摸个样式 hasClass
可以用来判断元素中是否含有某个class,如果有返回true否则返回false
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流