在chrome控制台重新加载后保持Javascript迭代
Keep the Javascript Iteration after reload in chrome console
我正在进行迭代,在迭代的最后一个代码中,我放入了一个将重新加载页面的代码。
如何保持JavaScript迭代运行后重新加载和继续状态?
如
for(i=0;i<5;i++) {
document.reload();
}
运行以上代码后,代码停止并重新加载控制台。
上面的代码可能不工作,但我希望它解释我正在尝试做什么
您需要将状态存储在不重置的地方。localStorage
为理想溶液。
var i = parseInt(localStorage['i'])||0;
localStorage['i'] = i+1;
// do some stuff
// and reload if you want
您可以使用TamperMonkey来完成此操作。TamperMonkey脚本在重新加载页面时也会被重置。但是,由于它们能够存储数据并在每次页面加载时运行,因此可以实现跨页面重新加载持续存在的行为。下面是一个例子:
// ==UserScript==
// @name HttpBin reload
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Reload something a couple of times
// @author Sjoerd
// @match https://httpbin.org/get
// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==
(function() {
'use strict';
var i = GM_getValue('counter', 0);
GM_setValue('counter', i + 1);
if (i < 5) {
location.reload();
}
})();
GM_getValue
和GM_setValue
函数将数据存储在某个Tampermonkey数据存储中,以便在下次脚本运行时可用。注意,您需要使用@grant
头文件来使用这些函数。
获取计数器的值并加1。然后,如果计数器小于5,则重新加载该页。这将重新加载页面五次,就像在您的示例中一样。
运行一次后,Tampermonkey数据存储中的counter
值被设置为6,脚本将不再重新加载。如果你想重新加载页面五次,你必须编写一些程序来重置计数器。
相关文章:
- 迭代JavaScript对象
- 迭代 javascript 对象无法通过 jQuery 工作
- 在 HTML 模板中迭代 JavaScript 哈希
- 迭代 JavaScript 数组与列表中的标记
- 迭代 JavaScript 集合并添加排序顺序
- 反向对象迭代(javascript)
- 迭代javascript哈希数组的最佳方式
- text在迭代JavaScript XML中返回不需要的空文本值的内容
- 使用"in"有什么区别?和“=”;操作符,同时迭代javascript循环
- 迭代Javascript对象和计数
- 迭代javascript对象,以便将关键变量用作调用对象的方法
- 如何迭代javascript数组并调用更新相同数组的函数?
- 使用for循环迭代javascript中的特定数组
- 为一个数组创建3个对象,然后使用迭代javascript显示数组
- 迭代javascript对象并动态添加对象属性(JS对象中的键值对)
- 迭代javascript HashTable而不造成优化损失
- 迭代JavaScript对象以绑定键
- 迭代javascript object和valueOf toString方法
- 当我在jQuery应用程序中迭代javascript字典的键时,我得到的是数字而不是值
- 迭代Javascript对象属性的顺序