javascript - 每次加载页面时加载不同的 js 文件

标签 javascript jquery ajax

所以基本上我有一个 JS 文件,其中包含对象 (var),并且我希望每次加载页面时都能够加载不同的对象。因此,例如,当加载页面时,会创建一个新的对象“temp”,其中包含来自 JS 文件的一些对象数据*(data1、data2 等)的数据。我不知道它是如何工作的,我不知道我是否需要 5 个 .js 文件或一个包含 5 个数据变量的文件。

    var data = {

    'coords' : [[784, 42], [802, 324], [128, 365], [710, 166], [513, 283], [610 , 391], [544, 48], [323, 204], [316, 50], [938, 52]],
    'walkthrough' : [8, 6, 0, 9, 3, 1, 5, 4, 2, 7],
    'highscore' : 2217  
}

var data1 = {
    'coords' : [[784, 42], [933, 211], [304, 190], [756, 264], [365, 395], [129, 302], [504, 261], [650, 393], [283, 26], [593, 35]],
    'walkthrough' : [8, 9, 0, 1, 3, 7, 6, 4, 5, 2],
    'highscore' : 2123

}

var data2 = {
    'coords' : [[784, 42], [591, 289], [242, 289], [710, 150], [465, 371], [589, 146], [667, 24], [323, 204], [173, 173], [898, 197] ],
    'walkthrough' : [8, 2, 7, 4, 1, 5, 3, 9, 0, 6],
    'highscore' : 1897

}

var data3 = {
    'coords' : [[785, 264], [591, 289], [392, 49], [419, 332], [862, 159], [533, 166], [710, 119], [323, 204], [600, 32], [834, 54]],
    'walkthrough' : [2, 7, 3, 1, 0, 4, 9, 6, 8, 5],
    'highscore' : 1573

}

var data4 = {
    'coords' : [[903, 292], [634, 352], [44, 350], [150, 188], [883, 131], [475, 240], [697, 152], [274, 341], [491, 69], [784, 34]],
    'walkthrough' : [2, 7, 5, 1, 0, 4, 9, 6, 8, 3],
    'highscore' : 2167

}

我想要的是有一个对象“temp”,它将包含来自某些数据对象的数据。

感谢任何帮助, 提前致谢。

最佳答案

这应该可以满足您的需求...

var data = [{
    'coords' : [[784, 42], [802, 324], [128, 365], [710, 166], [513, 283], [610 , 391], [544, 48], [323, 204], [316, 50], [938, 52]],
    'walkthrough' : [8, 6, 0, 9, 3, 1, 5, 4, 2, 7],
    'highscore' : 2217  
}, {
    'coords' : [[784, 42], [933, 211], [304, 190], [756, 264], [365, 395], [129, 302], [504, 261], [650, 393], [283, 26], [593, 35]],
    'walkthrough' : [8, 9, 0, 1, 3, 7, 6, 4, 5, 2],
    'highscore' : 2123

}, {
    'coords' : [[784, 42], [591, 289], [242, 289], [710, 150], [465, 371], [589, 146], [667, 24], [323, 204], [173, 173], [898, 197] ],
    'walkthrough' : [8, 2, 7, 4, 1, 5, 3, 9, 0, 6],
    'highscore' : 1897

}, {
    'coords' : [[785, 264], [591, 289], [392, 49], [419, 332], [862, 159], [533, 166], [710, 119], [323, 204], [600, 32], [834, 54]],
    'walkthrough' : [2, 7, 3, 1, 0, 4, 9, 6, 8, 5],
    'highscore' : 1573

}, {
    'coords' : [[903, 292], [634, 352], [44, 350], [150, 188], [883, 131], [475, 240], [697, 152], [274, 341], [491, 69], [784, 34]],
    'walkthrough' : [2, 7, 5, 1, 0, 4, 9, 6, 8, 3],
    'highscore' : 2167
}];

var thisData = data[Math.floor(data.length * Math.random())];

将所有数据存储在一个数组中,然后随机选择其中一个。这是一种比拥有多个 js 文件更好的方法,因为您只需维护一个文件。

关于javascript - 每次加载页面时加载不同的 js 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23342304/

相关文章:

php - $.post 在 chrome 中被取消

javascript - 如何在本地存储中的页面刷新时显示图像

jQuery 增量读取 AJAX 流?

jquery - 来自服务器的数组导致ajax成功回调函数中出现奇怪的附加行为?

php session 不支持 ajax

javascript - 多人游戏的 jQuery 替代品?

javascript - 即使没有其他进程阻塞该端口,Node.js 应用程序也无法在端口 80 上运行

javascript - 当键相同时合并 2 个对象值

javascript - CasperJS 的替代品,用于 Cucumber.js

javascript - JQuery 动态脚本标签和执行