Comment implémenter DedeCMS digg Ajax sur tous les domaines ?
Étant donné que le projet Web utilise un nom de domaine de deuxième niveau, le digg original ne peut pas être utilisé normalement. Après une analyse minutieuse, il a été constaté que le problème était que la soumission Ajax JS ne pouvait pas être multi-domaine.
Étude recommandée : Dreamweaver cms
fournit les solutions suivantes :
@écrit par etongchina 2009-02-06 19:00
Plan d'implémentation : similaire à l'implémentation json
Principe d'implémentation : js permet aux fichiers distants importés (js) d'exploiter les données locales
Méthode spécifique : (prendre http://news.xxx.com /200812/25-4653.html à titre d'exemple)
1. Modifier la partie d'appel js de http://news.xxx.com/200812/25-4653.html
Écrivez dans le fichier html ou js local :
<SCRIPT LANGUAGE="JavaScript"> function _Digg(type,tid){ var s = document.createElement("SCRIPT"); s.id="cgi_emotion_list"; document.getElementsByTagName("HEAD")[0].appendChild(s); s.src="http://www.xxx.com/../dig.php?type="+type+"&tid="+tid ; //需要统计的php页面的 src } function visitCountCallBack(data){ document.getElementsByTagName("HEAD")[0].removeChild(document.getElementById("cgi_emotion_list")); for(var i in data){ var e =document.getElementById(i); if(e) e.innerHTML=data[i]; //一些代码去修改本地html } } </script>
Modifiez le code suivant : Like 🎜> est : Like
2. Accéder aux fichiers distants :
Le fichier distant (http://www.xxx.com/../dig.php?type=digg&tid=456) renvoie un code similaire :
visitCountCallBack({ "visitcount":135 });
Le code ci-dessus est équivalent au fichier distant appelant la fonction locale : visitCountCallBack
De cette façon, vous pouvez utiliser les données de retour à distance pour modifier dynamiquement les fichiers locaux.
3. Résumé :
Concernant cette solution, elle est actuellement réalisable, mais certains pensent qu'elle sera dépassée. Je ne pense pas qu'il y aura de problème si JS outrepasse son autorité.
J'ai ici une application de type AJAX. La technologie clé est l'application de l'attribut src de la balise