我有這樣的HTML代碼中多次一前一後:獲取子屬性
<li>
<img src="path/to/my/picture.jpg" alt="my picture" />
<span>picture title</span>
</li>
,我試圖讓一個變量img
標籤的src
屬性中的路徑值,也是在另一個變量的範圍內的文本。
我嘗試這樣的代碼,但它不工作:
clickedLi.onclick = function() {
var imgPath = clickedLi.firstChild;
var pathLi = imgPath.getAttribute("src");
var imgTitle = clickedLi.lastChild;
var titleLi = imgTitle.data;
的clickedLi
變量僅通過包含所有文檔中的標籤li
陣列循環的變量。
因此,這是一個完整的JavaScript代碼,我有:
var myLis = document.getElementsByTagName('li');
var liCnt = myLis.length;
for(var i = 0; i < liCnt; i++) {
var currentLi = myLis[i];
currentLi.onclick = function() {
var imgPath = firstElementChild(this);
var pathLi = imgPath.getAttribute("src");
var imgTitle = lastElementChild(this);
var titleLi = imgTitle.firstChild.data;
var myImgDiv = document.getElementById("test");
myImgDiv.innerHTML = '<h2>' + titleLi + '</h2>';
myImgDiv.innerHTML = '<img src="' + pathLi + '" alt="' + titleLi + '">'
}
}
也許嘗試jQuery很容易。 – 2012-04-11 15:20:53
您可能需要'imgTitle.html()',而不是'.data'。 – 2012-04-11 15:21:23
我不希望爲此使用jQuery。只是個人喜好。 – 2012-04-11 15:22:24