1

我试图找出一种方法来自动重新加载浏览器的页面,直到页面的 HTML 代码中出现特定的字符序列。即,player.swf"。在我经常访问的网站上出现流式 Flash 播放器之前,更新页面是一种简单直接的解决方案。

我是 JavaScript 和浏览器插件编程的菜鸟,但我想我看到人们创建迷你游戏,比如用一艘小船拍摄页面元素,首先在当前页面的地址栏中输入一些代码,我怀疑那是JavaScript(但如果我错了,请纠正我)。

有没有办法创建一行代码,可以直接放在地址栏中并像描述的那样执行?我希望这种方式可以在任何支持从地址栏执行代码的浏览器中工作。

不涉及浏览器插件和扩展(~monkeys)的解决方案是非常受欢迎的。

4

2 回答 2

2
var i = 0, tmr = setInterval(function(re){
  $.ajax({url: document.location.href}).done(function(html){
    document.title = (++i) + ' checks';
    if ( html.match(re) ){ clearInterval(tmr); alert('found it'); document.location.reload(); }
  });
}, 60*1000, /player\.swf/i);

它不会完全重新加载页面。它使用 AJAX 读取页面并查找感兴趣的文本。如果找到,则提醒用户,然后执行一次真正的重新加载。在文档标题中跟踪测试的数量(在页面选项卡中可见)。每 60 秒进行一次测试;适应你的快乐。

要制作成书签,谷歌搜索“书签生成器”并选择一个收藏夹。

该代码很可能作为普通书签在感兴趣的网站上运行。如果没有,您可能需要包含 jQuery。使用这个 jQuery 小书签生成器:http ://benalman.com/code/test/jquery-run-code-bookmarklet/

对于那些说它不能作为小书签完成并且在重新加载页面方面过于字面思考的人:它仍然可以仅通过重新加载来完成。小书签可以首先打开一个新窗口,然后将代码注入其中,这将重新加载父窗口并检查其内部 HTML。这当然会比我提供的更复杂。

于 2013-10-08T17:40:00.853 回答
-1

您可能想要创建一个浏览器插件或 tampermonkey/greasemonkey 脚本来完成其中的“自动化”部分。

如果没有浏览器插件,您当然可以在地址栏中只使用 JavaScript,或者称为 JavaScript“书签”。

但是,您需要单击小书签,或在每次页面刷新时输入一次 JavaScript 代码。每次刷新页面时都会重新加载 JavaScript。因此,保留查找“player.swf”的 JavaScript 代码的唯一方法是使用浏览器插件或模拟插件的东西,例如 tampermonkey/greasemonkey。

只要页面的 URL 匹配为该特定脚本定义的任何内容,插件或 tampermonkey/greasemonkey 都可以在页面加载时自动运行 javascript。例如,这是我在大约 15 秒内编写的一个 tampermonkey 脚本,只要它打开,它就会在我访问 stackoverflow.com 页面的任何时候运行:

// ==UserScript==
// @name       Awesome website landing notifier
// @version    0.1
// @description  Let's you know when you're on a stack overflow webpage.
// @match      http://stackoverflow.com/*
// @copyright  2013+, Russell Dempsey aka SgtPooki
// ==/UserScript==


alert('You\'re on a stackoverflow page!');
于 2013-10-08T15:17:07.677 回答