我正在使用PHP進行開發,並在動態/可變內容周圍使用了一些html包裝(樣式化div)。換句話說,我多次使用標準模板並用不同的HTML填充它,從而創建類似的「模塊」。我也使用jQuery根據用戶交互動態更新內容。每個模塊都需要一些額外的信息來告訴jQuery如何處理用戶交互。我一直在使用微數據或數據屬性來完成這個任務。例子:Microdata與模塊化HTML5中的數據屬性
<script>
$(document).ready(function() {
eval($(".wrapper").children("meta[itemprop=userDoesSomething]").attr("content"));
});
</script?
<div itemscope class="wrapper" id="module1">
<meta itemprop="userDoesSomething" content="alert('Microdata is better!');">
Module-specific content
</div>
或
<script>
$(document).ready(function() {
eval($(".wrapper").data("userDoesSomething"));
});
</script>
<div class="wrapper" id="module1" data-userDoesSomething="alert('Data attributes are better!');">
Module-specific content
</div>
兩個完成同樣的事情,但使用微,我不必插入屬性到包裝的標籤。我可以使用元標記在包裝器中包含「數據」,保持包裝模板不變。我也意識到數據屬性可能更合適,因爲微數據實際上是指輸入數據,但在這種情況下,它更方便。從長遠來看,哪個更好?
你爲什麼要用eval()呢? – adeneo
什麼是在一個div內部做的元標記,也許你應該從基礎開始? – adeneo
您應該使用'data'屬性,但是使用存儲在其中的代碼的'eval()'的方法坦率地說是可怕的。 –