jQuery之所以令人爱不释手,在于其强大的选择器表达式令DOM操作优雅而艺术。
jQuery的选择符支持id,tagName,css1-3 expressions,XPath,参见:http://docs.jquery.com/Selectors
DEMO:
DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<title>Selector title>
<script src=”../scripts/jquery-1.2.3.intellisense.js” type=”text/javascript”> script>
head>
<body>
<input value=”1″ /> +
<input value=”2″ />
<input type=”button” value=”=” />
<label> label>
<script type=”text/javascript”>
$(“input[type=’button’]“).click(function(){
var i = 0;
$(“input[type=’text’]“).each(function(){
i += parseInt($(this).val());
});
$(‘label‘).text(i);
});
$(‘input:lt(2)‘)
.add(‘label‘)
.css(‘border‘,‘none‘)
.css(‘borderBottom‘,‘solid 1px navy‘)
.css({‘width‘:‘30px‘});
script>
body>
html>
运行效果如下:
代码分解:
$(“input[type=’button’]”)用于找到type属性为button的input元素(此为CSS表达式,IE7才开始支持,所以在IE6中通常用jQuery的这种表达式代替CSS代码设置样式)。click()函数为button添加click事件处理函数。
在button_click时,$(“input[type=’text’]”)找出所有输入框,each()函数遍历找出来的数组中的对象的值,相加后设到label中。
$(‘input:lt(2)’)
.add(‘label’)
两行代码意为:所有input中的前面两个(lt表示序号小于)再加上label对象合并成一个jQuery对象。
.css(‘border’,’none’)
.css(‘borderBottom’,’solid 1px navy’)
.css({‘width’:’30px’});
以上三行代码都是针对之前的jQuery对象设置CSS样式,如果一次需要设置多个CSS值,可用另一种形式,如:
.css({‘border’:’none’,’borderBottom’:’solid 1px navy’,’width’:’30px’});
css()函数如果只传一个字符串参数,则为取样式值,比如css(‘color’)为取得当前jQuery对象的样式属性color的值。jQuery对象有多种这样的函数,比如,val(”)为设value,val()为取value,text(‘text’)为设innerText,text()为取得innerText,此外还有html(),用于操作innerHTML,而click(fn)/click(),change(fn)/change()……系统函数则为事件的设置处理函数与触发事件。
由于多数jQuery对象的方法仍返回当前jQuery,所以jQuery代码通常写成一串串的,如上面的
.css(‘border’,’none’)
.css(‘borderBottom’,’solid 1px navy’)
.css({‘width’:’30px’});
,而不需要不断重复定位对象,这是jQuery的链式特点,后面文章还会有补充。
referrence:http://docs.jquery.com/Selectors
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容