我的頁面上有一個未知數的<img>
元素,沒有ID,我需要能夠瀏覽它們並根據一些不可預知的因素設置某些屬性。如何在不知道ID的情況下從JavaScript中選擇HTML元素?
3
A
回答
4
使用document.getElementsByTagName()
:
var imgs = document.getElementsByTagName("img");
for(var i = 0; i < imgs.length; i++) {
var currentImg = imgs[i];
if (currentImg.somAttr) {
// do your stuff
}
}
-1
如果不知道更多細節,很難回答這個問題,但是您是否考慮過使用Jquery?
0
使用jQuery和元素類型$(「IMG」)搜索每個()給每個元素
2
可以使用的getElementsByTagName得到的img標籤的列表上執行時的操作:
https://developer.mozilla.org/en/DOM/element.getElementsByTagName
1
您可以設置圖像標籤的名稱屬性,並可以使用document.getElementsByName執行任何操作。
例如
<script type="text/javascript">
function getElements()
{
var x=document.getElementsByName("x");
alert(x.length);
}
</script>
<input name="x" type="text" size="20" /><br />
<input name="x" type="text" size="20" />
6
你會使用this function通過它們來瀏覽一個數組:
document.getElementsByTagName('img');
這是img
元素的數組,你可以像對待一樣對待它功能(即你仍然可以在元件上相同的操作,但你需要參考的要素):
document.getElementsByTagName('img')[0]
如果你談論的因素是非常複雜的,我會用jQuery(這是真的很強大):
$('img[alt]').css('padding', '10px');
這將添加一個10px
填充到每個圖像與alt
屬性(我希望,因爲我臭名昭着的幾乎工作的代碼)。
祝你好運!
0
jQuery可能是您最好的選擇。否則,你將不得不遍歷一個dom樹並手動檢查屬性。一旦你使用jQuery,你可以通過屬性來選擇元素,如名稱,類,標籤名稱(輸入,圖像等)及其組合。
$("image .className").attr(....
6
大家忘掉document.images
...
for(var i = 0; i < document.images.length; i++) {
var img = document.images[i];
if(img.src == "banner.gif") {
img.alt = "Banner";
}
else if(img.alt == "Giraffe") {
img.title = "15 feet tall!";
}
}
如果您需要在另一個元素中獲取圖像,你可以使用getElementsByTagName
...
var elem = document.getElementById('foo');
var fooImages = elem.getElementsByTagName('img');
相關問題
- 1. 如何在不知道父元素的情況下選擇第n個孩子?
- 2. 如何在不知道元素的情況下選擇第一個孩子?
- 3. 如何在不知道CSS中的元素的情況下選擇第n個元素?
- 4. 在不知道元素類的情況下插入DIV
- 5. Jquery選擇器問題:在不知道ID的情況下引用特定元素
- 6. 如何在不知道其寬度的情況下將塊元素居中?
- 7. SQL Server在不知道列名的情況下從表中選擇數據
- 8. 在不知道元素名稱的情況下獲取XML元素內容PHP
- 9. 如何在不知道id的情況下從內頁獲取父級iframe元素?
- 10. 如何在不知道表單標識的情況下訪問表單元素?
- 11. 如何知道在特定情況下
- 12. 如何在不使用ID的情況下訪問/編輯HTML元素
- 13. 如何在不使用forEach()的情況下使用HTML元素?
- 14. 如何在不知道PHP中另一頁上的html元素參數的情況下獲取表單數據?
- 15. 如果我知道元素ID,如何在contenteditable div中選擇(獲取範圍或選擇對象)元素?
- 16. JavaScript:如何在有兩個B類元素的情況下在ID X內選擇類B內的類A?
- 17. 在不知道匹配元素的嵌套位置的情況下選擇匹配的元素,但不匹配那些匹配元素的子元素
- 18. 如何在不使用for-loop的情況下選擇所需的元素?
- 19. 在不知道ItemName的情況下從SimpleDB中刪除項目?
- 20. 如何知道哪些元素在contentEditable情況下正在修改?
- 21. 如何在不知道ID的情況下更改圖片的屬性?
- 22. 如何選擇一個動態元素id哪個元素id不知道?在jquery
- 23. 如何在不使用[]的情況下在IE8上的javascript中選擇對象的第一個元素?
- 24. 如何在不知道元素高度的情況下將第二個元素置於頂端
- 25. 如何在不知道其ID的情況下獲取嵌入對象?
- 26. 知道這種情況下
- 27. 如何知道在選擇中是否存在鏈接元素
- 28. Json.Net:使用SelectToken在不知道元素名稱的情況下獲取值?
- 29. 如何在不使用ID的情況下選擇Polymer中的節點?
- 30. 如何在不知道位置的情況下打開目錄
這正是我會推薦的代碼(假設它是一個圖書館不可知的網站)。 – Moses 2010-11-24 04:52:13
+1 for for循環 – gnarf 2010-11-24 05:44:24