Javascript:如何执行即使刷新后也会影响浏览器的命令?

时间:2016-07-31 15:36:44

标签: javascript

假设我想停止在浏览器中播放所有视频,以便在youtube.com页面上运行public void check() { realm=Realm.getDefaultInstance(); RealmResults<DataBase> realmResults=realm.where(DataBase.class).findAll(); for(DataBase db:realmResults) { strings.add(db.getName()); two.add(db.getAge()); } String[] name= new String[strings.size()]; name=strings.toArray(name); String[] name1= new String[two.size()]; name1=two.toArray(name1); listView.setBackgroundColor(Color.WHITE); listView.setAdapter(new CustomView(getActivity(),name,name1)); } 。我点击了,因为它没有完整的页面刷新,JS仍然存在。

但是,如果我按下刷新,那么我的JS将被重置,HTMLVideoElement.prototype.play = function() {}再次指向本机代码。有没有办法在页面刷新时保持该命令?

2 个答案:

答案 0 :(得分:1)

每次加载页面时都会重新运行JavaScript。这是设计使然无法更改的。使用浏览器扩展程序或在每个页面加载时运行脚本的用户脚本。

当页面导航时,控制台上运行的东西将会丢失(包括导航到您已经在的页面上)。

答案 1 :(得分:1)

  

是否有办法在页面刷新时保留该命令?

是。只要它是您控制的页面(因此,不是youtube.com),您可以在页面刷新之前和之后保留设置:

  1. 向URI添加哈希片段;
  2. 向URI添加查询字符串
  3. 放置一个cookie
  4. 使用window.name属性
  5. 使用HTML5网络存储(localStorage / sessionStorage)
  6. 通过在页面重新加载后使用javascript查询上述任何内容,您可以重新建立页面刷新之前的设置。