對Web頁面元素的絕對唯一引用方法

2021-10-03 02:30:27 字數 752 閱讀 3771

我們知道要在web頁面中引用乙個html元素,最簡單的方法就是使用getelementbyid方法,或其類似的一組getelementsby***方法。可是這裡需要注意的是,這些方法其實都不能完全絕對的唯一確定對乙個元素的引用。

至於getelementsby***我們不說了,它本身就是getelements,很明白了,那麼getelementbyid也不能唯一確定乙個元素嗎?當然是,不能。由於html的不嚴格性,在同一頁面中重複元素的id是被允許的。關於id的更多細節問題,請參考:細說html元素的id和name屬性的區別,一文。

那麼怎麼才能唯一的確定對乙個元素的引用呢?使用dom之間的引用結構來查詢?這個方法雖然是行的,但是可操作性是在是太差了。這裡需要說說我原來介紹過的html屬性uniqueid,它是微軟為html元素擴充的專有屬性,不遵循w3c的規範。這個uniqueid有一些undocumented的特性,uniqueid其實也是和id類似的一套元素表示體系,只是它是純客戶端的標示方案。它的一些細節在前面乙個鏈結中已經介紹了,下面我們主要說說它的特性。

可能有人會疑惑,這個uniqueid到底有什麼用啊?其實在動態生成大量頁面元素時,使用uniqueid可以非常方面的為元素生成真正的unique的id,它的意義就在於可以將這些動態元素cache起來,做統一管理。特別是在實現動態在的treeview時,如果合理使用uniqueid到來的好處,就可以避免很多需要對樹進行反覆遞迴便利才能完成的工作。還有,uniqueid是ie的dom提供的原生解決方案,比自己去做unique標示要方面高效的多,並且還利於對元素檢索。

對Web頁面元素的絕對唯一引用方法

我們知道要在web頁面中引用乙個html元素,最簡單的方法就是使用getelementbyid方法,或其類似的一組getelementsby 方法。可是這裡需要注意的是,這些方法其實都不能完全絕對的唯一確定對乙個元素的引用。至於getelementsby 我們不說了,它本身就是getelements...

對Web頁面元素的絕對唯一引用方法

我們知道要在web頁面中引用乙個html元素,最簡單的方法就是使用getelementbyid方法,或其類似的一組getelementsby 方法。可是這裡需要注意的是,這些方法其實都不能完全絕對的唯一確定對乙個元素的引用。至於getelementsby 我們不說了,它本身就是getelements...

對Web頁面元素的絕對唯一引用方法

我們知道要在web頁面中引用乙個html元素,最簡單的方法就是使用getelementbyid方法,或其類似的一組getelementsby 方法。可是這裡需要注意的是,這些方法其實都不能完全絕對的唯一確定對乙個元素的引用。至於getelementsby 我們不說了,它本身就是getelements...