以前html片段,但在這種特殊情況下,我將iframe的內容作爲字符串獲取 - 所以它是一個字符串,代表完整的HTML 文檔,我需要以相同的方式操作。這個技巧,或者甚至只是在jQuery中包裝字符串不再有效。
Here is a jsbin demonstrating the issue
html = """
<html>
<head>
<style>* { box-sizing: border-box; }</style
</head>
<body style="max-height: 750px">
<style> body { background-color: 'lavender'; }</style>
<div>
<p>Hi</p>
<p id="name">Your Name</p>
</div>
</body>
</html>
"""
$html = $(html)
$html.find('#name').text("George")
console.log $html.html()
如何分析和操作的完整html文件?
請注意,頭可能包含樣式元素,並且主體可能具有我不想丟失的屬性。當文檔包含svg時,我也會看到奇怪的序列化。
我不背水戰jQuery的,如果有另一個庫,這將使更多的意義在這裏
'body'標記內的'style'標記?這是無效的標記。 – undefined
如果'style'標籤的'style'標籤不是無效的(當然文檔是HTML5)。回到問題中......我可以想到一些相當令人反感的方法來處理這個問題,但總的來說,如果我一開始試圖嘗試類似這些方式的東西,我不得不懷疑我是否只是用醜陋拼湊來避免更大的問題。 – JayC
@undefined我不認爲這是正確的。根據MDN風格是'元數據內容,如果範圍屬性存在:流內容',所以至少在一種情況下它是絕對允許的,而在另一種情況下,它與鏈接或腳本屬於同一類別 –