javascript - 如何獲取點(diǎn)擊事件點(diǎn)擊后前一個后一個的值。
問題描述
for (var i = 0; i < pic.length; i++) {pic[i].onclick = function () { var aA = this.getAttribute('href'); return false;} }
已經(jīng)for循環(huán)遍歷綁定點(diǎn)擊事件,點(diǎn)擊圖片一的時候,已經(jīng)可以獲取到標(biāo)簽里面href的值(備注:href是A標(biāo)簽里面額跳轉(zhuǎn)鏈接,return false是為了不跳轉(zhuǎn)),現(xiàn)在我想獲取到點(diǎn)擊當(dāng)前圖案時候,上一個標(biāo)簽和下一個標(biāo)簽的href的值,讓中間圖片顯示圖案一,,左邊圖案顯示圖案4,右邊圖案顯示圖案2,該如何操作?
問題解答
回答1:for (var i = 0; i < pic.length; i++) { pic[i].index=i; pic[i].onclick = function () {var aA = this.getAttribute('href');//如果當(dāng)前是第一個,沒有上一個,值獲取下一個if(this.index===0){ var aANext=pic[this.index-1].getAttribute('href');}//如果當(dāng)前是最后一個,沒有下一個,只獲取上一個else if(this.index===pic.length-1){ var aAPrev=pic[this.index-1].getAttribute('href');}//否則上下都獲取else{ var aAPrev=pic[this.index-1].getAttribute('href'); var aANext=pic[this.index-1].getAttribute('href');}return false; }}回答2:
謝謝,你這種方法很好,在元素,及相鄰的元素設(shè)置一個index的屬性,我看明白了我現(xiàn)在是這樣寫的,不過還要出來,如何讓點(diǎn)第一個的時候出現(xiàn)第四個圖<script>
var pic = document.getElementById(’pic’).getElementsByTagName(’a’);var pid = document.getElementById(’pid’).getElementsByTagName(’img’);for (var i = 0; i < pic.length; i++) { pic[i].onclick = function () {var aA = this.getAttribute('href');var pid = document.getElementById(’pid’);pid.setAttribute('src', aA);var aB = this.parentNode.previousSibling.firstChild.getAttribute(’href’)pid.previousSibling.setAttribute(’src’, aB);var aC = this.parentNode.nextSibling.firstChild.getAttribute(’href’)pid.nextSibling.setAttribute(’src’, aC);
return false; }}
</script>
相關(guān)文章:
1. sql語句 - 如何在mysql中批量添加用戶?2. shell - Update query wrong in MySQL3. javascript - mysql插入數(shù)據(jù)時怎樣避免與庫中的數(shù)據(jù)重復(fù)?4. php - 數(shù)據(jù)庫表如果是null怎么替換為其他字段的值5. 事務(wù) - mysql共享鎖lock in share mode的實(shí)際使用場景6. 怎么php怎么通過數(shù)組顯示sql查詢結(jié)果呢,查詢結(jié)果有多條,如圖。7. mysql - JAVA怎么實(shí)現(xiàn)一個DAO同時實(shí)現(xiàn)查詢兩個實(shí)體類的結(jié)果集8. SQLAlchemy 訪問Mysql數(shù)據(jù)庫彈出Warning,VARIABLE_VALUE,如何解決?9. mysql - 數(shù)據(jù)庫建字段,默認(rèn)值空和empty string有什么區(qū)別 11010. mysql建表報錯,查手冊看不懂,求解?
