濮阳杆衣贸易有限公司

主頁 > 網(wǎng)站建設 > 建站知識 > DedeCMS digg Ajax 跨域的實現(xiàn)分析

DedeCMS digg Ajax 跨域的實現(xiàn)分析

POST TIME:2017-11-13 01:00

提供解決方案如下:
@writen by etongchina 2009-02-06 19:00
實現(xiàn)方案:類似json實現(xiàn)
實現(xiàn)原理:js允許引入的遠程文件(js)來操作本地數(shù)據(jù)
具體方法:(以http://news.xxx.com/200812/25-4653.html 為例)
1.修改http://news.xxx.com/200812/25-4653.html 的js調(diào)用用部分;
在本地html或js文件中寫入:
<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 ;
//需要統(tǒng)計的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>
修改以下代碼:<a href="javascript:Digg('digg',4653);">頂一下</a>
為:<a href="javascript:_Digg('digg',4653);">頂一下</a>
2. 訪問遠程文件:
遠程文件(http://www.xxx.com/../dig.php?type=digg&tid=456 )返回類似代碼:
visitCountCallBack({
"visitcount":135
});
以上代碼相當于遠程文件調(diào)用本地函數(shù):visitCountCallBack
這樣一來就可以實現(xiàn)利用遠程返回數(shù)據(jù)來動態(tài)修改本地文件。
3.總結(jié):
關于此方案,目前可行,也有人認為會過時。我認為不會產(chǎn)生JS越權的問題。
上一頁12 下一頁


收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
仁布县| 壤塘县| 孟津县| 澳门| 霸州市| 灌阳县| 万年县| 黎平县| 睢宁县| 浙江省| 双辽市| 成武县| 二手房| 二连浩特市| 孟连| 绥中县| 上思县| 景东| 泽州县| 哈尔滨市| 仙游县| 图们市| 安远县| 台州市| 祁门县| 茌平县| 淮滨县| 南漳县| 富裕县| 乌拉特中旗| 克什克腾旗| 齐齐哈尔市| 城市| 潼关县| 濮阳县| 洛川县| 葫芦岛市| 布尔津县| 五寨县| 永丰县| 偃师市|