jquery 操作DOM的基本用法分享

所属分类: 网络编程 / JavaScript 阅读数: 1429
收藏 0 赞 0 分享
例子展示:
jquery代码:
复制代码 代码如下:

<script language="javascript">
$(document).ready(function(){
alert($("ul li:eq(1)").text()); //选取第二个li的值
alert($("p").attr("title")); //选取p的title属性的值
//追加元素
$('ul').append("<li title='香蕉'>香蕉</li>").append("<li title='雪梨'>雪梨</li>");
//前面追加
$('ul').prepend("<li title='欠佳'>前加</li>");
//后面追加
$('ul').after("<li title='后加'>后加</li>");
//在p后面添加
$("<b> 你好</b>").insertAfter("p");
//在p前面添加
$("<b> 你好</b>").insertBefore("p");
//删除节点
$("ul :eq(1)").remove();
// 清空值
$("ul :eq(2)").empty();
//复制节点
$("ul li").click(function(){
$(this).clone(true).appendTo("ul");//true可有可无,有表示在复制的时候同时把绑定的事件也复制上
});
//替换节点
$("p[title=test]").replaceWith("<strong>你最喜欢的水果是?</strong>");
//$("<strong>你最喜欢的水果是?</strong>").replaceAll("P");
//包裹事件
$("strong").wrap("<b></b>")
//属性操作
$("P").attr({"title":"test","name":"pName"}); //添加属性
$("p").removeAttr("title"); //移除属性
//样式的操作
/*
添加样式: $("p").addClass("hight");
已出样式: $("p").removeClass("highr");
切换样式: $("p").toggleClass("another");
是否有样式: $("p").hasCLass("higth");
*/
alert($("p").html()); //获取值 html()类似于javascript中的innerHTML属性
$("p").html("change"); //改变值
alert($("p").text()); //获取值 text()类似于javascript中的innerTEXT属性
$("p").text("again change"); //改变值
$("#name").focus(function(){
if($("#name").val()=="请输入用户名"){
$(this).val("");
}
}).blur(function(){
if($("#name").val()==""){
$(this).val("请输入用户名");
}
});
$("#password").focus(function(){
$("#tip").hide();
}).blur(function(){
if($("#password").val()==""){
$("#tip").show(200);
}
});
$("#submit").click(function(){
if($("#name").val()=="请输入用户名"||$("#password").val()==""){
$("#name").css("background","yellow");
$("#password").css("background","yellow");
}
});
$("#single").val("选择2");
$("#multiple").val(["选择2号","选择3号"]);
$(":checkbox").val(["check2","check3"]);
$(":radio").val(["radio1"]);
alert("careful!");
$("#single :eq(2)").attr("selected",true);
$("[value=radio2]:radio").attr("checked",true);
//遍历节点 children()方法
$("#btnShow").click(function(){
for(var i=0;i<$("body").children().length;i++){
$("#body").append($("body").children()[i].innerHTML);
}
});
//next()方法,取得紧挨p后面的同辈的所有元素
alert($("ul li").next().text());
//prev()方法,取得紧挨匹配前面的同辈的一个元素
alert($("li[title=菠萝]").prev().text());
//siblings()方法,获取匹配元素所有的同辈元素
for(var i=0;i<$("p").siblings().length;i++){
$("#subling").append($("p").siblings()[i].innerHTML);
}
//closest()方法,取得最近的匹配元素
$(document).bind("click",function(e){
$(e.target).closest("li").css("color","red");
});
//css的操作
$("p").css({"fontSize":"40px","background":"yellow"});
//offset()方法,获取元素在当前视窗的相对偏移量,返回对象为top和left两个属性
alert("top="+$("P").offset().top +";"+"left="+$("P").offset().left);
//position()方法,获取元素相对于最近的position样式设置为relative或者absolute
//的祖父节点的相对偏移,返回top和left两个属性
alert("top="+$("P").position().top +";"+"left="+$("P").position().left);
//scrollTop() and scrollLest()方法返回滚动条距顶端和左端的距离
alert("scrolltop="+$("P").scrollTop() +";"+"scrollleft="+$("P").scrollLeft());
});
</script>

html代码:
复制代码 代码如下:

<body>
<p >test</p>
<p id="p" title="test">你喜欢的苹果是?</p>
<ul>
<li title="苹果">苹果</li>
<li title="橘子">橘子</li>
<li title="菠萝">菠萝</li>
</ul>
<input type="button" id="show" value="show" />
<br/><br/><br/>
<form id="form1" action="#">
<div >
<input type="text" id="name" value="请输入用户名"><br/>
<input type="password" id="password" value=""> <br/>
<div id="tip" style="display:none"><font color="red">请输入密码</font></div><br/>
<input type="button" id="submit" value="提交"/>
</div>
</form>
<br/>
<form id="from2" action="#">
<select id="single">
<option value="选择1号">选择1号</option>
<option value="选择2号">选择2号</option>
<option value="选择2号">选择3号</option>
</select>
<select id="multiple" multiple="multiple" style="height:120px">
<option selected="selected">选择1号</option>
<option value="选择2号">选择2号</option>
<option value="选择3号">选择3号</option>
<option value="选择4号">选择4号</option>
<option selected="selected">选择5号</option>
</select>
<input type="checkbox" value="check1"/>多选1
<input type="checkbox" value="check2"/>多选2
<input type="checkbox" value="check3"/>多选3
<input type="checkbox" value="check4"/>多选4
<input type="radio" name="radio" value="radio1"/> 单选1
<input type="radio" name="radio" value="radio2"/> 单选2
<input type="radio" name="radio" value="radio3"/> 单选3
<br/>
<input type="button" id="btnShow" value="显示body"/>
<br/><div id="body"></div> <div id="subling"></div>
</form>
</script>
</body>
更多精彩内容其他人还在看

jQuery LigerUI 使用教程表格篇(1)

ligerGrid是ligerui系列插件的核心控件,用户可以快速地创建一个美观,而且功能强大的表格,支持排序、分页、多表头、固定列等等
收藏 0 赞 0 分享

JavaScript中常用的运算符小结

JavaScript中常用的运算符小结,需要的朋友可以参考下。
收藏 0 赞 0 分享

深入理解JavaScript系列(13) This? Yes,this!

在这篇文章里,我们将讨论跟执行上下文直接相关的更多细节。讨论的主题就是this关键字。实践证明,这个主题很难,在不同执行上下文中this的确定经常会发生问题
收藏 0 赞 0 分享

javascript (用setTimeout而非setInterval)

javascript (用setTimeout而非setInterval)如果用setInterval 可能出现 下次调用会在前一次调用前调用
收藏 0 赞 0 分享

JavaScript中两个感叹号的作用说明

用两个感叹号的作用就在于,如果明确设置了o中flag的值(非null/undefined/0""/等值),自然test就会取跟o.flag一样的值;如果没有设置,test就会默认为false,而不是null或undefined
收藏 0 赞 0 分享

javascript写的简单的计算器,内容很多,方法实用,推荐

最近用javascript写了一个简单的计算器,自己测试感觉还好,代码都给了注释,非常不错,推荐大家学习。
收藏 0 赞 0 分享

js的表单操作 简单计算器

javascript写的简单的加减乘除计算器,里面涉及到一些方法还是很实用的哦,新手不要错过
收藏 0 赞 0 分享

Jquery中删除元素的实现代码

empty用来删除指定元素的子元素,remove用来删除元素,或者设定细化条件执行删除
收藏 0 赞 0 分享

javaScript 利用闭包模拟对象的私有属性

JavaScript缺少块级作用域,没有private修饰符,但它具有函数作用域。作用域的好处是内部函数可以访问它们的外部函数的参数和变量(除了this和argument
收藏 0 赞 0 分享

为JavaScript类型增加方法的实现代码(增加功能)

大家在js开发过程中有些功能已经满足不了我们的需求,或没有我们需要的功能,那么我们就可以自己扩展下,个性化js
收藏 0 赞 0 分享
查看更多