8
votes

Le bouton AddChis ne fonctionnera pas à l'intérieur de Ajax, mais fonctionnera normalement

Fondamentalement, c'est ce que je fais. Visites utilisateur Site, charges "index.html" Dans Index.html, il charge automatiquement, via AJAX, "Détails.html" dans un DIV. Je mettais un bouton AddChis sur "Détails.html". Cependant, pour une raison quelconque, le renversement ne fonctionne pas.

Quand je visitant les détails.html dans le navigateur, les travaux de rouleau. Je suppose que c'est à cause de l'AJAX? P>

<a class="addthis_button"  href="http://www.addthis.com/bookmark.php?v=250&amp;pub=xa-4adf7e45288f5b21">
<img src="http://s7.addthis.com/static/btn/sm-share-en.gif" width="83" height="16" alt="Bookmark and Share" style="border:0;margin-top:16px;"/></a>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pub=xa-4adf7e45288f5b21"></script>


0 commentaires

8 Réponses :


0
votes

On dirait que le script appelle l'événement surchargé de JavaScript et que l'utilisation de cet appel AJAX ne déclenche pas cet événement. Vous pouvez essayer d'autres "partagent ce" widget?

Comme http://sharethis.com/#STSSS=G12M3UGH.21ZB ou pré-charger ce bouton?

Pouvez-vous poster un peu plus de l'histoire sur ce que vous faites?


0 commentaires

0
votes

est des détails.html une page entièrement conforme à sa propre page? HTML, corps, étiquettes de tête, etc.

Si tel est le cas, je pense que les choses peuvent être vissées aimables lorsque vous essayez de le charger dans une autre page. Je modifierais soit simplement des détails.html pour simplement inclure le balisage Barebones dont vous avez besoin - ou - si vous en avez besoin pour toujours être accessible individuellement - vous pouvez utiliser JQuery pour supprimer les bits nécessaires après l'appel AJAX et ne vous injectionnerais que cette partie. < /p>












/pre>


0 commentaires

2
votes

Si je comprends votre question correctement, dans le rappel de la fonction AJAX, liez le roulement à la touche ADD-CE.

$('.addthis_button').live('mouseover',function(){//do mouseover});
$('.addthis_button').live('mouseout',function(){//do mouseout});


0 commentaires

0
votes

Ajoutez cet extrait de .js à la .html que vous chargez. Remplacez "#atbutton" avec le sélecteur de votre bouton. addthis.button ("# atbutton");


0 commentaires

14
votes

J'ai récemment couru dans des problèmes avec l'utilisation d'AddCe sur un site All Ajax et a pu proposer quelques solutions pour ce problème.

Il s'avère une variable que vous pouvez passer lors du chargement de l'Ajax Script ainsi qu'un moyen de réinitialiser le script si le DOM est rechargé via AJAX. J'ai posté la solution complète en détail sur mon blog ici: p>

http://joecurlee.com/2010/01/21/frow-a-ujust-addthis-with-ajax-andveroverflowauto/ p>

Pour résumer brièvement, la solution est en train de charger AddThis avec la variable Domready = 1 annexé et réinitialiser le script en supprimant la charge initiale, puis rechargez le script de manière dynamique: P>

var script = 'http://s7.addthis.com/js/250/addthis_widget.js#domready=1';
if (window.addthis){
    window.addthis = null;
}
$.getScript( script );


2 commentaires

Il suffit de ressembler à cela pour moi cette solution ne fonctionnait pas. Je devais faire un rappel dans le .getscript () qui a ran addthis.init () pour le bouton pour apparaître.


C'était essentiellement pour moi. Toutefois, la compensation de différentes variables était nécessaire, comme décrit ici: Stackoverflow.com/Questtions/9650226/...



2
votes

a couru dans le même problème et cela m'a résolu pour moi dans tous les grands navigateurs (IE6 +, FF, Safari dans Mac / XP):

http://joecurlee.com/2010/01/21/how-to-utube-addthis-with-ajax-andtoverflowauto/comment-page-1/#COMMENT-24


0 commentaires

5
votes

addthis.toolbox (". addCe_toolbox");


0 commentaires

1
votes

J'ai eu le même problème. Corrigé avec le code suivant. J'espère que cela le corrige pour vous aussi.

Méthode originale: strong> p> xxx pré>

nouvelle méthode: strong> p >

$.ajax({
    url:Url,
    type: 'POST',
    cache: false,
    success: function(res){
        var script = 'http://s7.addthis.com/js/250/addthis_widget.js#domready=1';
        if (window.addthis) {
            window.addthis = null;
            window._adr = null;
            window._atc = null;
            window._atd = null;
            window._ate = null;
            window._atr = null;
            window._atw = null;
        }
        $.getScript(script);
        // your custom code
    }
});


0 commentaires