国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

jQuery選擇器特殊字符與屬性空格問題

2024-05-06 15:13:00
字體:
來源:轉載
供稿:網友

一、選擇器中含有特殊符號的注意事項

1.選擇器中含有“.”、“#”、“(”或“]”等特殊字符

根據W3C的規定,屬性值中是不能含有這些特殊字符的,但在實際項目中偶爾會遇到表達式中含有“#”和“.”等特殊字符,如果按照普通的方式去處理出來的話就會出錯。解決此類錯誤的方法是使用轉義符轉義。

<div id="id#b">bb</div> < div id="id[1]">cc</div> 

不能這樣寫:

$('#id#b'); $('#id[1]'); 

應該使用轉義符號:

$('#id//#b'); //轉義特殊字符“#”
$('#id//[1//]'); //轉義特殊字符“[ ]”

2.屬性選擇器的引號問題
1.3.1版本徹底放棄了1.1.0版本遺留下的@符號,如果你使用1.3.1以上的版本,那么你不能在屬性前添加@符號,比如:
$('div[@title="test"'];

正確的寫法是:

$('div[title="test"'];

二、選擇器中含有空格的注意事項

選擇器中的空格也是不容忽視的,多一個空格或少一個空格也許會得到截然不同的結果。看下面這個例子,它的HTML代碼如下:

<div class="test"> <div style="display:none;">aa</div> <div style="display:none;">bb</div> <div style="display:none;">cc</div> <div class="test" style="display:none;">dd</div> < /div> < div class="test" style="display:none;">ee</div> < div class="test" style="display:none;">ff</div> 

使用如下的jQuery選擇器分別獲取它們。

//注意區分類似這樣的選擇器 //雖然一個空格,卻截然不同的效果. var $t_a = $('.test :hidden'); var $t_b = $('.test:hidden'); var len_a = $t_a.length; var len_b = $t_b.length; alert("$('.test :hidden') = "+len_a); //輸出 4 alert("$('.test:hidden') = "+len_b); //輸出 3 

之所以會出現不同的結果,是因為后代選擇器與過濾選擇器的不同。

var $t_a = $('.test :hidden'); //有空格 是選取class為“test”的元素里面的隱藏元素。

var $t_b = $('.test:hidden'); //沒有空格 則是選取隱藏的class為“test”的元素。

這點和css是一樣的 css中假如有個div有兩個class屬性.top 和 .right <div class="top right "></div>,在css中我們要選擇它定義樣式只能這樣寫 .top.right{ } 而不能寫成.top .right{ }

以上是小編為大家總結的全部內容啦,希望對大家的學習有所幫助~~

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 建湖县| 阳谷县| 体育| 常州市| 五原县| 普安县| 隆昌县| 岳池县| 湖北省| 响水县| 民丰县| 岳西县| 水富县| 高阳县| 犍为县| 新昌县| 洛宁县| 永泰县| 彩票| 奎屯市| 宁陕县| 霍州市| 峨眉山市| 静安区| 论坛| 延边| 桦甸市| 诏安县| 宁阳县| 东乌珠穆沁旗| 衡南县| 益阳市| 阜南县| 岐山县| 兴宁市| 江孜县| 定襄县| 桃园县| 雷山县| 丽水市| 额敏县|