日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

java清除浏览器记录_Javascript脚本之清除浏览器历史数据

發(fā)布時間:2025/4/17 HTML 59 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java清除浏览器记录_Javascript脚本之清除浏览器历史数据 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

簡介

在某些數(shù)據(jù)查詢頁面,點(diǎn)擊某條數(shù)據(jù)查看詳細(xì)信息,如果此時列表數(shù)據(jù)有更新(新增、修改、刪除等),當(dāng)點(diǎn)擊瀏覽器的返回按鈕時,查看的數(shù)據(jù)仍然是舊的數(shù)據(jù),原因是返回時,查看的是瀏覽器的緩沖數(shù)據(jù),并不會從數(shù)據(jù)庫中重新查詢。為了解決這個問題,我研究出了一段可以避免這種臟數(shù)據(jù)的腳本,只需要在查詢頁面加入一段腳本即可。我將這段腳本寫在了一個nohistory.js的文件中,在查詢頁面引入即可實(shí)現(xiàn)實(shí)時最新數(shù)據(jù)。

JavaScript腳本代碼展示

/**

* 在引入該js文件時,可以傳遞model參數(shù),表示刷新模式:

* strict或1:嚴(yán)格模式(默認(rèn)值),所有點(diǎn)擊后退或前進(jìn)按鈕的方式進(jìn)入頁面都會刷新

* loose或0:寬松模式,只針對點(diǎn)擊某元素的方式離開頁面才會刷新

* 示例:

* 注:該插件只對get(查詢)請求方式有效!

*/

(function(id, refresh) {

var hisgory = performance.navigation.type === 2,

scripts = document.scripts,

src = scripts[scripts.length - 1].src,

// 寬松模式檢測

loose = /model\s*=\s*(?:loose|0)/.test(src);

if (loose) {

document.write('');

var element = document.getElementById(id);

function addEvent(e, type, fn) {

typetype = type.toLowerCase().replace(/^on/, "");

if (e.addEventListener) {

e.addEventListener(type, fn);

} else if (e.attachEvent) {

e.attachEvent("on" + type, fn);

} else {

e["on" + type] = fn; // IE5

}

}

function removeEvent(e, type, fn) {

typetype = type.toLowerCase().replace(/^on/, "");

if (e.removeEventListener) {

e.removeEventListener(type, fn);

} else if (e.detachEvent) {

e.detachEvent("on" + type, fn);

} else {

e["on" + type] = null; // IE5

}

}

function mark() {

element.value = "1";

}

var binded = false;

addEvent(window, "mousedown", function() {

if (!binded) {

binded = true;

addEvent(window, "beforeunload", mark);

}

});

addEvent(window, "mouseout", function(e) {

ee = e || window.event;

var tagName = e.target.tagName;

if (binded && (tagName == "BODY" || tagName == "HTML")) {

binded = false;

removeEvent(window, "beforeunload", mark);

}

});

// 排除“F5”和“Ctrl+R”刷新

addEvent(document, "keydown", function(e) {

ee = e || window.event;

if (e.keyCode == 116 || e.ctrlKey && e.keyCode == 82) {

removeEvent(window, "beforeunload", mark);

}

});

// Compatible IE

addEvent(document, "readystatechange", function() {

if (document.readyState === "complete" && element.value && hisgory) {

refresh();

}

});

} else if (hisgory) {

refresh();

}

})("nohistory_v2.0, code by chenqi@1000phone.com in 2017.12.07", new Function("location+=''"));

使用示例

瀏覽器返回、前進(jìn)回到該頁面自動刷新

...

總結(jié)

以上是生活随笔為你收集整理的java清除浏览器记录_Javascript脚本之清除浏览器历史数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。