réinitialiser les autres fonctions javascript après le chargement d'une page avec pagination ajax
Excuses, pour un total de newb ici. Comment puis-je charger d'autres plugins, et de laisser à d'autres scripts de la fonction après le chargement d'un ajax page générée? C'est mon actuelle code:
jQuery(document).ready(function($) {
var $mainContent = $("load-content"),
siteUrl = "http://" + top.location.host.toString(),
url = '';
$(document).delegate("a[href^='"+siteUrl+"']:not([href*='/wp-admin/']):not([href*='/wp-login.php']):not([href$='/feed/'])", "click", function() {
if($.browser.msie){
var myie="/"+this.pathname;
location.hash = myie;
//alert(location.hash);
}else{
location.hash = this.pathname;
}
return false;
});
$("#searchform").submit(function(e) {
$search = $("#s").val();
$search = $.trim($search);
$search = $search.replace(/\s+/g,'+');
location.hash = '?s='+$search;
e.preventDefault();
});
$(window).bind('hashchange', function(){
url = window.location.hash.substring(1);
if (!url) {
return;
}
url = url + " #content";
$('html, body, document').animate({scrollTop:0}, 'fast');
$mainContent.fadeOut(500, function(){$('#content').fadeOut(500, function(){
$("#loader").show();});}).load(url, function() {
$mainContent.fadeIn(500, function(){
$("#loader").hide(function(){ $('#content').fadeIn(500);});});});
});
$(window).trigger('hashchange');
});
Comment les objets incorporés dans les pages de conserver leur fonctionnalité? Principalement des vidéos, des diaporamas et des autres médias qui utilisent javascript comme
video js (lecteur vidéo html5)
vimeo
et
portefeuille diaporama pour wordpress
Vous devez vous connecter pour publier un commentaire.
Lorsque vous chargez ajax généré balisage il ne conservera pas la fonctionnalité qu'il avait avant. Dans l'exemple ci-dessus, vous êtes en cours d'initialisation des choses lorsque le DOM est prêt à être servi. Afin de garantir que tous les plugins, etc, sont en cours d'exécution après l'exécution de la requête ajax, vous devez réinitialiser eux.
Donné l'exemple de code ci-dessus, je vous recommande un peu de restructuration. Par exemple, vous pouvez créer une fonction appelée
init
ce que vous pourriez appeler pour initialiser certains plugins:Et puis la suite de cela, sur le succès de rappel de vous à une requête ajax, vous pouvez l'appeler de nouveau qui va réinitialiser les plugins: