随笔 - 315  文章 - 1  评论 - 12  阅读 - 24万

ajax对象方法的使用

change.js文件的内容
对象函数关键字:fn
jQuery.fn.change = function () {

this.css({"background": "red"});//这里的this是当前jQuery对象函数,不是DOM
}

jQuery.fn.onchange = function (c1, c2) {
// this这里的this不是单个对象了而是一个数组了,会导致所有的li都发生改变而不是单个的
//if(this.hasClass(c1)){
// this.removeClass(c1).addClass(c2);
//}else{
// this.removeClass(c2).addClass(c1);
//}
//解决方法:
// this表示当前的jQuery对象
写法1:
this.each(function () {
// this表示当前的Dom对象
var $elem = $(this);
if ($elem.hasClass(c1)) {
$elem.removeClass(c1).addClass(c2);
}else {
$elem.removeClass(c2).addClass(c1);
}
});

}
写法2:
jQuery.fn.onchange = function (c1, c2) {
  var $obj = this.each(function () {
// this表示当前的Dom对象
var $elem = $(this);
if ($elem.hasClass(c1)) {
$elem.removeClass(c1).addClass(c2);
}else {
$elem.removeClass(c2).addClass(c1);
}
});
return:$obj;
}
写法3:
jQuery.fn.onchange = function (c1, c2) {
return this.each(function(){
var $elem = $(this);
if ($elem.hasClass(c1)) {
$elem.removeClass(c1).addClass(c2);
} else {
$elem.removeClass(c2).addClass(c1);
}
});
}


实例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>demo</title>
<script src="js/jquery.min.js"></script>
<script src="js/change.js"></script>
<script>
$(document).ready(function(){
$("#btnClick").click(function(){
$(".demo").change();//对象函数调用
});

$("#onchange").click(function () {
$("li").onchange("bold","italic");
});

});
</script>
<style>
.demo{
width: 100px;
height:100px;
border: 2px solid yellow;
}
li{
list-style: none;
margin-top: 20px;
border: 1px solid #b3b3b3;
padding: 5px;
width: 150px;
}
.bold{
font-weight: bold;
}
.italic{
font-style: italic;
}
#onchange{
width: 80px;
height: 30px;
border: 1px solid #00B83F;
color: #fff;
background-color: #00B83F;
}

</style>
</head>
<body>
<div class="demo"></div>
<input type="button" id="btnClick" value="点击改变背景颜色"/>

<hr><hr><hr><hr>
<ul class="box">
<li class="bold">金刚葫芦娃</li>
<li class="italic">这个杀手不太冷</li>
<li class="bold">行尸走肉</li>
<li class="italic">捉妖记</li>
<li class="italic">红楼梦</li>
<li class="bold">三国演义</li>

</ul>
<input type="button" value="点击切换" id="onchange"/>
</body>
</html>
注:首先给字段添加上需要的类,并定义好需要的样式,js只需要做一件事:就是点击按钮时切换相应的样式,添加或者删除类即可。
需要注意的是需挨个遍历,很有可能出现js把当前的jQuery对象当成数组而不是对象时就会出现问题
posted on   小虾米吖~  阅读(282)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」

点击右上角即可分享
微信分享提示