我正在學習編程只有幾個月,我想知道,是否有可能通過JavaScript訪問和操作HTML/XML元素,但沒有DOM API? 例如要創建自己的API或其他東西?是否可以在不使用DOM API的情況下管理HTML元素?
1
A
回答
5
第一人必須使用瀏覽器API通過JavaScript訪問DOM,所以很難想象如何通過該API通過JavaScript訪問DOM。如果沒有獲取DOM元素並使用.innerHTML
屬性,您甚至無法獲取原始HTML,因此如果不使用API,就不會真正操縱事物。
你可以在現有的API之上構建你自己的API(這是類似於jQuery和YUI的框架),但是在內部它們仍然會使用現有的DOM API來訪問DOM元素。
你的問題似乎有點奇怪(你如何訪問DOM而不使用API訪問DOM),所以我想知道你是否可以解釋你真的想要解決什麼問題?
有可以單純通過使用:hover
狀態CSS進行配置,你甚至可以使用純CSS設置CSS3動畫在現代瀏覽器的幾個操作,但是這是關於什麼可以沒有JavaScript的DOM API來操縱的程度。
2
可以使用字符串,但這是不可取的。主要是由於幾個原因。操縱大量DOM的字符串可能會很麻煩。與使用innerHTML
插入字符串相比,使用文檔片段更高效(和最佳實踐)。
您可以覆蓋或擴展到HtmlElement
的原型,然後着手添加自己的功能,但這類似於重新發明輪子。大量的工作將基本上使用相同的可用功能。
+0
感謝您的回覆,您可以給我一些例子或有用的鏈接,從哪裏我可以學習如何操縱HTML作爲字符串? – Givi
相關問題
- 1. 是否可以在不渲染HTML的情況下使用React?
- 2. 是否可以在不使用z-index的情況下製作一堆元素?
- 3. 是否可以在沒有GMS的情況下使用Google API?
- 4. 是否可以在不重置DOM的情況下移動DOM中的<video>元素?
- 5. 是否可以在不使用debugfs的情況下使用ftrace?
- 6. 是否可以在不使用Rails的情況下使用FactoryGirl?
- 7. CSS可以在以下情況下使用元素:hover?
- 8. 是否可以在不使用RefreshToken的情況下使用Google Adwords API?
- 9. 如何在不使用forEach()的情況下使用HTML元素?
- 10. 是否可以在不使用Xcode的情況下使用XCTest單元測試?
- 11. 是否可以在不使用JavaScript API的情況下調用getPanoramaByLocation?
- 12. 是否可以在不拖放的情況下使用Linq-SQL?
- 13. 是否可以在不使用isNaN的情況下檢測NaN?
- 14. 是否可以在不關閉流的情況下對元素進行分組?
- 15. 是否可以在不移動開始的情況下抽出整個元素?
- 16. 是否可以在不使用CSS3的情況下旋轉HTML對象?
- 17. 我可以調用AJAX使用元素ID,而不是在任何情況下
- 18. 是否可以在不使用變量的情況下解壓元組?
- 19. 如何檢查元素在我的情況下是否可見?
- 20. 是否可以在不禁用JavaScript的情況下禁用AJAX?
- 21. 是否可以在不使用Android SDK管理工具的情況下下載Android SDK組件?
- 22. 在不打開的情況下訪問網頁的DOM元素
- 23. 是否可以在不添加其他HTML元素的情況下用Css畫線?
- 24. 是否可以在沒有IIS的情況下使用Silverlight RiaServices?
- 25. 是否可以在沒有log4j的情況下使用perf4j?
- 26. 是否可以在沒有Expressj的情況下使用Passport.js?
- 27. 是否可以在沒有QtConcurrent的情況下使用QFuture?
- 28. 是否可以在沒有RTP/SAVP的情況下使用SIPML5
- 29. 是否可以在沒有MFC的情況下使用CListCtrl
- 30. 是否可以在沒有jQuery的情況下使用Materializecss?
你爲什麼想這樣做? – jantimon
沒有理由這樣做。甚至想要這樣做。我知道,認爲你可以從頭開始構建一些東西可能會很有趣,但是......並不僅僅是它不會起作用。 – Ryan
我只是想知道這是否可能,如果是這樣,如何做到這一點...... – Givi