2010-03-16 32 views
2

好了,所以我嘗試找出存儲在我的網頁數據的最快方法不會降低頁面加載:在頁面上存儲PHP數據的最佳方式,以用於JavaScript/jQuery?

  • 我需要存儲在 頁面信息供以後使用的jQuery。
  • 我的頁面是活動頁面,我想 將數據附加到每個事件錨點。
  • 有100多個活動可以附加數據。

錨與一個PHP循環, ,所以我可以使用創建該環內的數據元素創建的事件要麼

  1. 使用未語義標籤,即的rel =「some_data」
  2. 用於循環的每次迭代創建jquery.data()

或我可以運行環再次,單獨地,這次在腳本標籤內使用jquery.data();

會真的很感激這個!

+0

我懷疑你需要的所有100個事件一次。你爲什麼不使用jquery只需要必要的? – 2010-03-16 12:49:05

回答

3

一種可能性是在服務器端生成一個包含所有事件的Javascript數組或對象,並將其作爲Javascript變量注入頁面。

基本上是:

  • 在PHP端:
    • 生成事件的陣列
    • 把它轉換爲JavaScript中,使用json_encode
    • 其注入的HTML頁面。
  • ,後來,在JS方面:
    • 只需使用JavaScript變量。

與解決方案。它是適用於幾乎任何可能的類型的數據的一件大事,是相當快的,而且很容易發展。


生成的HTML + JS代碼應該是這樣的:

<script type="text/javascript"> 
    var myArrayOfEvents = [ ... ]; 
</script> 

而且它可以用一些PHP代碼是這樣產生:

<script type="text/javascript"> 
    var myArrayOfEvents = <?php echo json_encode($myEvents); ?>; 
</script> 


當然,最多您可以:

  • Defin Ë你想要的結構爲您的活動
  • 構建在PHP
  • 使用它在Javascript
+0

嘿男人,這聽起來很不錯 - 總得比回覆腳本標籤更有效嗎? – Haroldo 2010-03-16 12:43:49

+0

'json_encode'非常快;這樣可以避免任何額外的循環,或者多次調用某個函數來處理數據 - 所以它非常高效。 – 2010-03-16 12:47:27

相關問題