jquery屬性選擇器not has怎麼寫 行懸停高亮顯示

代碼如下:

$(function(){
/*
//$("html body p table.table_list tbody tr").not(":has('td a img[src*=tj.gif]')").mouseover(function(){
$("html body p table.table_list tbody tr:not(':has('td a img[src*=tj.gif]')')").mouseover(function(){
//alert($(this)[0].style.backgroundColor);
$(this).css("backgroundColor","66CCFF");// "red" "#f8fbfd"
$(this).mouseout(function(){
$(this).css("backgroundColor","");//$(this)[0].style.backgroundColor="";
});
});
*/
var tr2=$("table.table_list tr:not(':has('td a img[src*=tj.gif]')')");
tr2.mouseover(function(){
$(this).css("backgroundColor","66CCFF");
})
tr2.mouseout(function(){
$(this).css("backgroundColor","");
})
})

上面代碼 讓一個table中沒有 提交 圖片的行懸停時都高亮

答案不滿意 最後索性學一學 鋒利的jquery 在附錄速查手冊 裡找到這個 *= 和!= 分別表示包含和不包含。

這行

代碼如下:

var tr2=$("table.table_list tr:not(':has('td a img[src*=tj.gif]')')");

not裡面又可以放一個函數has 因為是要tr變色不是要img變色 所以不能用tr td a img[src!=tj.gif] 註意都要引號 問題:有三層引號 怎麼辦?還是單引號?

問題又來瞭tj.gif沒打引號怎麼也可以?

代碼如下:

[src*=tj.gif

意思是src屬性中包含tj.gif字符串的?

所有的也可以這樣寫:

代碼如下:

var tr2=$("table.table_list tr").not(':has('td a img[src*=tj.gif]')');

所以我懷疑 選擇器 裡的 : 代表調用選擇器。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。