第一篇文章,所以請溫柔;-)
我一直在學習編碼在過去的幾個星期通過製作一個虛擬頁面,並且隨着我的進展逐漸實現了我學習的內容,因此它是一個混合包,其功能/代碼根據我寫它的時間,基於純HTML/CSS,內聯JavaScript,外部JavaScript,最後jQuery。
所以我大多裹了起來,現在我清理爛攤子,我的任務之一是剔除功能和行代碼,並在其中的一個我有點卡住。
的前爲30層的按鈕調用到30種不同的功能的onclick像這樣:
function cell3() {
document.getElementById('base3').src='images/1/3/' + x + '.png';
document.getElementById('base3b').src='images/1/3/' + x + '.png';
document.getElementById('v2base3').src='images/2/3/' + x + '.png';
document.getElementById('v2base3b').src='images/2/3/' + x + '.png';
document.getElementById('cell3').style.backgroundColor= x ;
}
當一個全局變量(x)定義爲圖像點擊該按鈕時,一些div內,以取代圖像的文件夾的路徑(小區3)。它也改變了它的顏色。與此位的jQuery很抱歉,如果命名比較混亂......
所以我刪除所有30個功能和30的onclick電話:
$('button').click(function(){
var eyeD = $(this).attr("id");
var newURLa = 'images/1/' + eyeD + '/' + x + '.png';
var newURLb = 'images/2/' + eyeD + '/' + x + '.png';
$('base' + eyeD).attr('src', newURLa);
$('base' + eyeD + 'b').attr('src', newURLa);
$('v2base' + eyeD).attr('src', newURLb);
$('v2base' + eyeD + 'b').attr('src', newURLb);
$(this).css("background-color", x);
document.getElementsByid('check').innerhtml = eyeD;
});
要做到這「工作」我改變了從「小區1」,「小區2等爲‘1’,‘2按鈕的名字’等
現在的事情是,上的按鈕,當點擊了var‘獨眼’需要從按鈕確定的值。 ('1','2'等)。元素ID被正確地形成('base1','base2'...'base1b',base2b'...),並且URL的形成正確。 (代碼中的最後一行是一個顯示值的p元素,所以我可以嘗試對其進行疑難解答)背景顏色也按預期更改。但圖像不會被替換。
嘗試添加逗號所產生的URL的情況下,它是一個語法問題,但沒有任何反應。我甚至去過freestyle,並且用它的= url(),不同地方的不同逗號等等來嘗試它。還寫了一個沒有變量的網址,看看這是否可行,但仍然沒有。在查看控制檯時也沒有發生錯誤。
這可能是一個基本的「衛生署!」的事情,但現在我有心理障礙......
此外,有沒有一種方法來保持原有的命名,只是獲取的ID的編號部分?考慮使用[4]標識符來獲得第5位數字,但運行雙數字時不起作用。 (10,11等)
謝謝!
'$工作( 「ID」)'是不正確。它應該是'$(「#ID」)' – Archer
非常接近....'$('base'+ eyeD).'應該是'$('#base'+ eyeD).'以及所有其他ID 。 – epascarello
只是給了一個嘗試。仍然不起作用。我沒有使用#一段時間,並沒有問題,所以要麼它不再需要了,或者我將不得不花費幾個小時將#添加到所有調用id的...的元素的函數: - )謝謝BTW –