尝试跨域检查版本。 这是JS Bin上的代码,所以你可以看到它是如何工作的。 http://jsbin.com/iKaWEFI/12/edit?html,js,output
DOMAIN1(这是DOMAIN2中链接的代码):
function myVersion1(){window.domain2_version="1.0";}
DOMAIN2:
<script src="http://yourjavascript.com/19653021128/version-new.js"></script>
<script>
function myVersion2() {
window.domain1_version = "1.0";
}
if (myVersion1() == window.domain2_version) {
document.write("Good");
} else {
document.write("Bad");
}
</script>
它表示 Bad ,但它应该说 Good ,因为DOMAIN1上的1.0与DOMAIN2上的1.0相同。
如果DOMAIN1中的数字是1.1,那么,结果应该说是Bad。
答案 0 :(得分:3)
myVersion1是一个函数,所以它不等于“1.0”。你有两个功能,两个都在做同样的事情。他们都设置window.domain2_version =“1.0”。您可能希望函数返回一个值,否则您可以比较两个不同的全局变量。
答案 1 :(得分:2)
DOMAIN1:
function myVersion1(){window.domain1_version="1.0";}
DOMAIN2:
<script src="http://yourjavascript.com/19653021128/version-new.js"></script>
<script>
function myVersion2() {
window.domain2_version = "1.0";
}
myVersion1();
myVersion2();
if (window.domain1_version == window.domain2_version) {
document.write("Good");
} else {
document.write("Bad");
}
</script>
优化版
DOMAIN1:
function myVersion1(){ return "1.0"; }
DOMAIN2:
<script src="http://yourjavascript.com/19653021128/version-new.js"></script>
<script>
function myVersion2() {
return "1.0";
}
document.write(myVersion1() == myVersion2() ? "Good" : "Bad");
</script>