重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
||不是jQuery独有的,他是js的“短路或”运算符。
在濮阳等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、做网站 网站设计制作按需定制设计,公司网站建设,企业网站建设,高端网站设计,营销型网站建设,成都外贸网站建设,濮阳网站建设费用合理。
在jQuery中这样的用法的意义在于判断了第一个条件就不用计算第二个了。具体解释如下:
curr=$("li.current",this)[0] || $($(li[0]).addClass("current")[0]
首先,计算的是||号左边部分$("li.current",this)[0],$("li.current",this)在jQuery中,表示的是当前对象下面class="current"的li元素的数组。再在后面添上[0]运算符,表示取数组中的第一个元素。如果找到了这个元素,那么就直接把这个元素赋给curr,然后不计算||后面的表达式,然后进入下一语句;
如果找不到,那么计算||后面的表达式$($(li[0]).addClass("current")[0]。先看$(li[0]),表示选择所有有名字为“0”的属性的li元素,然后$($(li[0]).addClass("current"),表示把这些元素都添加一个"current"的Class,然后用[0]取得其中的第一个,最后返回这个元素。
这时,由于||前面的表达式没有找到元素,两者进行或运算的结果就是||后面的表达式的结果,就是刚才找到的那个元素,于是就把这个元素赋值给了curr。
补充:我觉得第二部分的表达式有点问题,建议改成:
curr=$("li.current", this)[0] || $($(li)[0]).addClass("current")[0];
试试。
这样,第二部分表示的就是取得第一个li元素,然后添加current样式,然后返回它。
已经测试#36;('#div1,#div2').attr('class','waring');
是正确的
还有一种就是多个DIV你可以给他们加一些无用的属性比如:
div id="div1" title="haha"/divdiv id="div2" title="haha"/divdiv id="div3" title="haha"/div#36;("div [titile=haha]").attr('class','waring');
在HTML页面引入jQuery文件
!-- 1. 引入jQuery文件 --
script src="jquery-1.11.3.js"/script
在HTML页面定义元素
!-- 定义HTML页面元素 --
input type="text" value="请输入你的用户名" id="username"
使用jQuery的选择器定位元素
// 2. 使用jQuery选择器定位HTML页面元素
var $username = $("#username");
body
总和:input type="text" id="total" readonly="readonly" /
table id="panel"
tr
td面积:/td
tdinput id="area" type="text" class="price" value="16.2"//td
td*(数量:/td
tdinput id="num" type="text" class="num" //td
td+价格:/td
tdinput id="price" type="text" class="numm" //td
td+重量:/td
tdinput id="weight" type="text" class="numm"/)/td
/tr
/table
/body
------jQuery
$(function(){
var area=parseFloat($("#area").val());
var num=parseInt($("#num").val());
var price=parseFloat($("#price").val());
var weight=parseFloat($("#weight").val());
var total=area*(num+price+weight)
$("#total").val(total);
});
|| 是个逻辑运算符,表示或者的意思 var jParent=$(_box||document)就是找$(_box)对象,如果不存在就找$(document)对象,给jParent赋值