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对象当成数组而不是对象时就会出现问题
ajax对象方法的使用的更多相关文章
- Ajax01 什么是ajax、获取ajax对象、ajax对象的属性和方法
1 什么是ajax ajax是一种用来改善用户体验的技术,其本质是利用浏览器提供的一个对象(XMLHttpRequest,也可称之为ajax对象) 向服务器发送异步请求;服务器返回部分数据(不是一个完 ...
- Ajax01 什么是ajax、获取ajax对象、ajax对象的属性和方法、编程步骤、缓存问题、乱码问题
目录 1 什么是ajax 2 获取ajax对象 3 ajax对象的属性和方法 4 使用ajax的编程步骤 5 缓存问题 6 乱码问题 1 什么是ajax ajax是一种用来改善用户体验的技术,其本质是 ...
- 创建ajax对象并兼容多个浏览器方法简单记录
这篇文章主要介绍了如何创建ajax对象并兼容多个浏览器,需要的朋友可以参考下<script> function createAjax(){ var request=false; //win ...
- Ajax详解及其案例分析------如何获得Ajax对象,使用Ajax对象发送GET和POST请求,校验用户名,POST和GET请求时的乱码处理,实现级联的下拉列表
本节主要内容预览: 1 获得Ajax对象 2 使用Ajax对象发送GET请求 3 使用Ajax对象发送POST请求 4 使用Ajax校验用户名 5 POST请求时的乱码处理 6 GET请求时的乱码处理 ...
- 2-jQuery - AJAX load() 方法【进阶篇】
第一篇的AJAX load() 方法过于简单,补充一下,完整的. 格式 $(selector).load(URL,data,callback); 源码 <!DOCTYPE html> &l ...
- Ajax请求(二)--JQuery的Ajax请求方法
JQuery库的Ajax请求的几种方法: 1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. 参数含义: url (String ...
- Ajax的方法和使用代码
//1.创建Ajax对象,已经封装好的函数: function createXHR(){ if (typeof XMLHttpRequest != "undefined"){ re ...
- 两种ajax的方法
两种Ajax方法 Ajax是一种用于快速创建动态网页的技术,他通过在后台与服务器进行少量的数据交换,可以实现网页的异步更新,不需要像传统网页那样重新加载页面也可以做到对网页的某部分作出更新,现在这项技 ...
- 原生ajax与封装的ajax使用方法
当我们不会写后端接口来测试ajax时,我们可以使用node环境创建一个本地服务器. 1.创建一个本地服务器可参考http://www.cnblogs.com/heyujun-/p/6793900.ht ...
随机推荐
- 判断GPS是否开启&转到设置GPS界面
/** * 判断GPS是否开启,GPS或者AGPS开启一个就认为是开启的 * @param context * @return true 表示开启 */ public static final boo ...
- python,栈的小例子
''' 1.首先确认栈的概念,先进后出 2.初始化的时候如果给了一个数组那么就要将数组进栈 ''' class Stack: def __init__(self,start=[]): self.sta ...
- 当linux中的所有指令突然不能使用的时候
接到同事电话,线上linux系统所有命令执行不了(由于其误操作执行一些命令) 此时可以按以下步骤解决问题: 1.首先导入临时变量(重启虚拟机之后失效),使得所有命令行暂时可以用 直接在命令行执行以下命 ...
- Zynq-Linux移植学习笔记之27UIO机制响应外部中断实现【转】
转自:https://blog.csdn.net/zhaoxinfan/article/details/80285150 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog ...
- Hash算法【转】
转自:http://www.cnblogs.com/wangjy/archive/2011/09/08/2171638.html Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度 ...
- Linux Makefile 生成 *.d 依赖文件及 gcc -M -MF -MP 等相关选项说明【转】
转自:https://blog.csdn.net/qq1452008/article/details/50855810 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog. ...
- installshield路径
InstallShield系统变量 BATCH_INSTALL 指示当传输文件采用LOCKEDFILE或SHAREDFILE时是否锁定文件 CMDLINE Setup.exe传递的命令行参数 COMM ...
- struts2框架之拦截器(参考第二天学习笔记)
拦截器 1. 什么是拦截器 1). 与JavaWeb中的Filter比较相似. 2). 拦截器只能拦截Action!!! 2. Struts中定义了很多拦截器,其中defaultStack中的拦截器会 ...
- UR#13 SRAND
总感觉这位大仙讲的很清楚:bztminamoto 题意 题目讲的是求 l~r 内所有数的次大质因子,这里设 f(x) 为 x 的次大质因子 我们差分一下就变成求两个前缀和信息了 按照套路,我们考虑 S ...
- 将C注册到lua环境中使用
注册到lua的方式有两种,一种是lua解释器,如果支持动态链接,使用动态链接机制,将函数接口编译成动态链接库,然后将动态链接库放到lua的C路径(LUA_CPATH)中,然后在lua文件中直接使用 r ...