在我的主游戏页面上,我有这个jquery / javascript将一个角色加载到一个特定的div中:
$(document).ready(function () {
var charID = 123456;
$("#characterEditor").load('/character/Viewer.htm', 'test = ' + charID);
});
在“viewer.htm”中,我试图获得'test'的价值。但是,“测试”在浏览器控制台中始终是“未定义的”。
$(document).ready(function () {
console.log('charID from game: ', test);
});
在浏览器中,我看到它正确加载:
Viewer.htm?测试= 123456
当我尝试使用类似的东西访问查询字符串时:
function getParameterByName(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
var testCharID = getParameterByName("test");
console.log('charID from game: ', testCharID);
它尝试从主游戏页面而不是加载的页面(Viewer.htm)获取查询字符串
有没有这样做?
谢谢!
答案 0 :(得分:0)
使用 localStorage
在主游戏页面中保存角色ID
$(document).ready(function () {
var charID = 123456;
$("#characterEditor").load('/character/Viewer.htm', 'test = ' + charID);
localStorage.setItem('charID', charID);
});
您可以在viewer.htm
中访问字符ID$(document).ready(function () {
var test = localStorage.getItem('charId');
console.log('charID from game: ', test);
});