老師這里寫的代碼 不好理解,我不明白,有沒有高手講一下。那個&&那里
var currentLink = menu.find(".current");
??????????????? if (currentId && currentLink.attr("href") != currentId) {
??????????????????? currentLink.removeClass("current");
??????????????????? menu.find("[href=" + currentId + "]").addClass("current");
??????????????? }
2016-07-14
其實你完全可以去掉if那個條件也可以成立,你去掉那個if添加只剩下三行代碼后你會發現。這里要做的只是兩步:第一、先把全部a元素的樣式去掉,第二、對匹配的那個a元素加上樣式。如果不先去掉,你在瀏覽器中會發現a元素全都顯示樣式,而不知道到底那個a被選中
2016-05-31
?if (currentId && currentLink.attr("href") != currentId) {}
currentId等價于currentId!="",意思就是說當current有值時執行下面代碼
&& currentLink.attr("href") != currentId ? ?//并且選中樓層的a標簽的href不等于滾動條所在樓層的id執行下面代碼,因為相同話,就不需要執行下面的代碼了,節約性能
解決問題,請采納
2016-05-26
左側有5個div
情況:左側div顯示出第二個div的時候
需要去掉右側導航欄第一個li標簽上的current類,給第二個li標簽加上該類
這個時候currentid不為空,并且 currentLink.attr("href") != currentId
但若是左側的div顯示的始終是第一個div,就不需要讓右側導航欄的樣式發生改變
這個時候currentid是空,并且 currentLink.attr("href") == currentId
2016-04-28
var currentLink = menu.find(".current");在menu里面找到已經設置了默認樣式的元素。假設這個元素為A
?if (currentId && currentLink.attr("href") != currentId)判斷currentId的值是否改變和A元素的href值與當前項目的ID值是否一致,不是的話說明當前項目與默認樣式的元素不匹配,就移除默認樣式,
menu.find("[href=" + currentId + "]").addClass("current");找到與menu中href值與當前項目的ID一致的元素,并為其添加默認樣式。
2016-04-28
(可能不完全正確,理解為主哦)用currentId表示當前包含img的div并把初始賦值為空,如果這個div進入了適當的顯示區域,就把?選擇符“#”+當前div的id名 賦值給它。 ??currentLink是初始類名為current的a(也就是第一個),如果currentId不為空且進入了適當的顯示區域的這個div對應的不是已經有類名current的a的話,就把這個a的current類刪除,并查找所有a中href為currentId的a,再把這個a添加current類名。 ? ? 其實連接塊和圖片塊就是靠鏈接a的href和圖片div的id建立的聯系呀