http://api.jquery.com/jQuery.getJSON/
http://www.w3schools.com/jquery/ajax_getjson.asp
http://api.jquery.com/jQuery.parseJSON/
http://www.json.org/js.html
http://php.net/manual/en/function.json-encode.php
http://techblog.willshouse.com/2009/06/12/using-json_encode-and-json_decode-in-php4/
Это сайты, которые я исследовал чаще всего, пытаясь обернуть мою голову вокруг json
Это мой php
$fvsc=array();
query_posts('meta_key=featuredv');
if (have_posts()) :
while (have_posts()) :
the_post();
$fvsc []= "\n" . '<div id="featuredv-' . "$wp_query->current_post\">" . "$post->post_content;" . '</div>';
endwhile;
endif;
$jsonObject= json_encode($fvsc);
а это мой .js
jQuery(document).ready(function($){
jQuery.getJSON("<?php TEMPLATEPATH . '/featuredv.php'?>",function(data){
var fvsJA=jQuery.parseJSON(<?php $jsonObject; ?>);
var fts = $("#ttContent>[id^=featuredt]");
var fvs = $("#inCenter>[id^=featuredv]");
});
fts.click( function(){
$("#inCenter>[id^=featuredv]").replaceWith( function(){
$(fvsJA).eq(fts.index(this))
});
});
Я пытаюсь превратить мой массив $ fvsc в массив jQuery. $ fvsc - это массив видео, при нажатии на fts он должен взять содержимое div и заменить его другим видео с тем же индексом, что и при нажатии fts. Если вы просто загрузите все fts и fvs в одно место, вы можете использовать функцию щелчка здесь, и она прекрасно работает, но если вы выводите 5 видео, а затем 10 и так далее, сайт загружается все хуже и хуже. Я подумал, что если я смогу преобразовать свой массив php в объект jquery, который загружает строки json, то по щелчку преобразуется обратно в объект и заменяет содержимое div, нагрузка значительно ухудшится.