jquery 其他api操作

笔记整理,供以后参阅
[size=x-large][color=darkred]1.获得指定元素(上下级元素,上一个,下一个)[/color][/size]

<body>
<div>
<a href="#">AAAA</a>
<p>
<a href="#">BBBB</a>
</p>
<a href="#">CCCC</a>
</div>
<hr/>
<div>xxx<a class="del" href="#">删除</a></div>
<div>百度 <a class="del" href="#">删除</a></div>
<div>新浪 <a class="del" href="#">删除</a></div>
</body>


<script type="text/javascript">
/*
children 获取指定子元素
find 获取指定的后代元素
parents 获得祖父辈元素
parent 获取父辈元素
next/prev 获取下一个/上一个元素
siblings 获取所有兄弟元素 */
$(function(){
$('div>a').each(function(){
alert($(this).text());
});
$('div').children('a').each(function(){
//alert($(this).text());
});

//(区别上面多个BBBB)
$('div').find('a').each(function(){
//alert($(this).text());
});

$('div').find('a').each(function(){
//$(this).parent().remove();
});

});
</script>

[size=x-large][color=darkred]2.样式css和属性attr[/color][/size]
<body>
<div>JQUERY</div>
<a href="http://www.jquery.cn">hellojquery</a>
<input type="button" value="设置" id="mybutton" />
<hr/>
<a href="http://www.jquery.cn">hellojquery</a>
<input type="button" value="显示为红色" id="mybutton2" />
<hr/>
<p>ABCD</p>
<input type="button" value="开关" id="mybutton3" />
</body>


<script type="text/javascript">
$(function(){
//点击一个button,动态设置 div的属性 id name class
$("#mybutton").click(function(){
// 设置值
$("div").attr({"id":"div1","name":"mydiv","class":"jquery"});
// 获取属性
// alert($("a").attr("href"));
//尝试能否设置一个不存在的属性?
//$("div").attr("page","http://www.jquery.cn");
});

// 点击button2,将<a> 字体设置为红色
$("#mybutton2").click(function(){
// 设置样式方案一 ,通过attr
$("a").attr("style","color:red");
// 设置样式方案二 ,通过css
$("a").css("color","red");
// 设置样式方案三 ,设置class
$("a").addClass("red");
});

// 点击开关 按钮,第一次点击,button字体变为红色,第二次点击 还原
$("#mybutton3").click(function(){
$("p").toggleClass("red");
});
});
</script>
<style type="text/css">
.red {
color:red ;
}
</style>

[size=x-large][color=darkred]3.html和text区别[/color][/size]
[color=orange]val可以添加值,来实现选中[/color]
<body>
<div><a>AAAA</a>BBBB</div>
用户名 <input type="text" id="username" /> <br/>
性别 <input type="radio" name="gender" value="男" />男
<input type="radio" name="gender" value="女" /> 女<br/>
爱好<input type="checkbox" name="hobby" value="sport" />体育
<input type="checkbox" name="hobby" value="read" />读书
<input type="checkbox" name="hobby" value="music" />音乐 <br/>
城市 <select id="city">
<option value="北京">北京</option>
<option value="上海">上海</option>
<option value="广州">广州</option>
</select> <br/>
<input type="button" value="获取val" id="mybutton"/>

<select name="edu" id="edu">
<option value="本科">本科</option>
<option value="高中">高中</option>
<option value="小学">小学</option>
<option value="幼儿园">幼儿园</option>
</select>
</body>

<script type="text/javascript">
$(function(){
// 1、区分 html() 和 text()
//alert($("div").html());
//alert($("div").text());

// 2、val() 取值操作
$("#mybutton").click(function(){
alert("用户名:" + $("#username").val());
alert("性别:" + $("input[name='gender']:checked").val());

// 对select元素用val 获取到选中option的值 $("#city option:selected").val()
alert("城市:" + $("#city").val());
});

// 3、 通过val() 进行选中
$("input[name='gender']").val(['男']); // radio
$("#city").val('广州'); // select
$("input[name='hobby']").val(['sport','music']); // checkbox

// 输出所有 学历 文本内容
//alert($("#edu").text());
$("#edu option").each(function(){
alert($(this).text());
});
});
</script>

[size=x-large][color=darkred]4.dom操作:添加节点(select)[/color][/size]
<body>
<select id="province">
<option value="">请选择省份</option>
</select>
<hr/>
<select id="edu" id="edu">
<option>博士</option>
<option>硕士</option>
<option>本科</option>
<option>幼儿园</option>
</select>
<hr/>
<table>
<tr>
<td>
<select id="select1" multiple="multiple" style="width: 80px;height: 200px">
<option>北京</option>
<option>上海</option>
<option>广州</option>
<option>深圳</option>
<option>天津</option>
<option>南京</option>
</select>
</td>
<td>
<input type="button" value="-->" id="toRight"/> <br/>
<input type="button" value="-->>" id="allToRight"/><br/>
<input type="button" value="<--" id="toLeft"/><br/>
<input type="button" value="<<--" id="allToLeft"/>
</td>
<td>
<select id="select2" multiple="multiple" style="width: 80px;height: 200px">
</select>
</td>
</tr>
</table>
</body>

<script type="text/javascript">
$(function(){
// JS对象数组
var provinces = [
{"id":"1","name":"河北省"},
{"id":"2","name":"山西省"},
{"id":"3","name":"湖南省"},
{"id":"4","name":"广东省"}
];
// 数组内容,生成select 元素中,生成<option>元素
// 传统 HTML DOM
/*
for(var i=0; i<provinces.length; i++){
var option = new Option();
option.text = provinces[i].name;
option.value = provinces[i].id;

document.getElementById("province").add(option);
}
*/
//数组遍历,select添加节点option
$(provinces).each(function(){
var option = $("<option value='"+this.id+"'>"+this.name+"</option>");
$("#province").append(option);
});

// 添加 大专option (本科和幼儿园) ---- 外部插入
var option = $("<option>大专</option>");
$("option:contains('本科')").after(option);

// 左右移动
$("#toRight").click(function(){
$("#select2").append($("#select1 option:selected"));
});
$("#allToRight").click(function(){
$("#select2").append($("#select1 option"));
});
$("#toLeft").click(function(){
$("#select1").append($("#select2 option:selected"));
});
$("#allToLeft").click(function(){
$("#select1").append($("#select2 option"));
});
});
</script>

[size=x-large][color=darkred]5.dom操作:删除节点[/color][/size]
<body>
<p>jquery</p>
<div>jquery</div>
<input type="button" value="删除p"/>
<hr/>
<div align="center">
添加用户<br/>
姓名<input type="text" name="name" />
email<input type="text" name="email" />
手机<input type="text" name="phone" /> <br/>
<input type="button" value="提交" /> <br/><br/>
<table border="1">
<tr>
<th>姓名</th>
<th>email</th>
<th>手机</th>
<th></th>
</tr>
</table>
</div>
</body>


<script type="text/javascript">
$(function(){
$("p").click(function(){
alert("被点了");
});


$(":button").click(function(){
// 删除p 元素
// var $p = $("p").remove(); // 元素和事件一起删除
var $p = $("p").detach(); // 元素删除,事件保留
// 使用remove删除元素,事件也被删除了
$("body").append($p);
});


// 清除 div 的内容
// document.getElementsByTagName("div")[0].innerHTML = "" ;
// $("div").empty();

// 添加 "提交" 按钮点击事件
$("input[value='提交']").click(function(){
var name = $("input[name='name']").val();
var email = $("input[name='email']").val();
var phone = $("input[name='phone']").val();
// 生成tr
var $tr = $("<tr><td>"+name+"</td><td>"+email+"</td><td>"+phone+"</td><td><a href='#' class='del'>删除</a></td></tr>");
$("table").append($tr);
});

// 删除链接注册事件
$(".del").live("click",function(){
$(this).parents("tr").remove();
});
});
</script>

[size=x-large][color=darkred]6.dom操作:全选等[/color][/size]
<body>
<div>A</div>
<hr/>
<p>B
<a href="#">C</a>
</p>
<input type="button" value="clone" />
<hr/>
请选择您的爱好
<input type="checkbox" name="checkAll" /> 全选/全不选 <br/>
<input type="checkbox" name="hobby" value="篮球"/> 篮球
<input type="checkbox" name="hobby" value="足球"/> 足球
<input type="checkbox" name="hobby" value="唱歌"/> 唱歌
<input type="checkbox" name="hobby" value="游泳"/> 游泳<br/>
<input type="button" value="全选" />
<input type="button" value="全不选" />
<input type="button" value="反选" />
</body>
<script type="text/javascript">
$(function(){
$("p").click(function(){
alert("p");
});

$("a").click(function(){
alert("a");
});

// 将p元素赋值到 div 元素
//$("div").append($("p").clone()); // 复制节点,不复制事件
$("div").append($("p").clone(true)); // 复制节点, 复制事件

// 将所有p元素 ,替换 <span>元素 保留原有内容
$("p").each(function(){
$(this).replaceWith("<span>"+$(this).html()+"</span>");
});

//全选 练习
/*
// 全选checkbox
$("input[name='checkAll']").click(function(){
if($("input[name='checkAll']").attr('checked')=="checked"){
// 选中
$("input[name='hobby']").attr("checked","checked");
}else{
// 不选
$("input[name='hobby']").removeAttr("checked");
}
});

// 全选按钮
$(":button[value='全选']").click(function(){
$("input[name='hobby']").attr("checked","checked");
});
// 全不选按钮
$(":button[value='全不选']").click(function(){
$("input[name='hobby']").removeAttr("checked");
});
// 反选按钮
$(":button[value='反选']").click(function(){
$("input[name='hobby']").each(function(){
if($(this).attr("checked")=="checked"){
// 当前选中 ---- 不选
$(this).removeAttr("checked");
}else{
// 当前没有选中 --- 选中
$(this).attr("checked","checked");
}
});
});
*/
// 全选checkbox
$("input[name='checkAll']").click(function(){
var isChecked = this.checked;
$("input[name='hobby']").each(function(){
this.checked = isChecked ;
});
});

// 全选按钮
$(":button[value='全选']").click(function(){
$("input[name='hobby']").attr("checked","checked");
});
// 全不选按钮
$(":button[value='全不选']").click(function(){
$("input[name='hobby']").removeAttr("checked");
});
// 反选按钮
$(":button[value='反选']").click(function(){
$("input[name='hobby']").each(function(){
this.checked = !this.checked ;
});
});
});
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值