導航:首頁 > 編程語言 > js控制瀏覽器前進後退

js控制瀏覽器前進後退

發布時間:2024-02-02 06:29:11

❶ 多級頁面間的後退如何實現(js方法)

瀏覽器的「後退」功能與頁面的級數無關。它是將一個窗口依次瀏覽過回的多個頁面按順序排列答成歷史列表,每次點擊「後退」按鈕或用js腳本觸發「後退」功能時,它將依據當前窗口的歷史列表來後退展示頁面。js腳本示例如下:

window.history.go(-1);//後退一頁
window.history.go(-2);//後退兩頁

以上代碼中的數字為負數,表示後退,正數表示前進。


窗口瀏覽的頁面有可能是不斷重復某兩個頁面,那麼go(-1)方法也將在這兩個頁面之間輪回多次。如果想要快速後退到這兩個頁面之前的頁面,只能使用更精確的記憶方法了,瀏覽器自帶的歷史功能無法滿足需求。比如,使用cookies來記錄訪問URL的歷史,也可以記憶必要的參數,需要後退的時候直接對window.location進行賦值(重定向),跳轉到想要到達的頁面。

❷ js 監控用戶點擊瀏覽器「後退」按鈕(並禁用),能實用IE和360兩種瀏覽器

屏蔽退鍵御格鍵
document.onkeydown = function(e)
{
var e=e||window.event
var evs=e.srcElement?e.srcElement:e.target;
if(evs.type!="password" && evs.type!="text"){
if(e.keyCode==8){
if(window.event){
e.keyCode=0;
e.returnValue=false;
}else{
e.preventDefault();
}
}else if(e.altKey && ((e.keyCode==37)||(e.keyCode==39))){
if(window.event){
e.returnValue=false;
}else{
e.preventDefault();
}
}
}
}
//////////罩塌///////////////////////
屏蔽右鍵
<script type="稿悶岩text/javascript">
function block(oEvent){
if(window.event)
oEvent=window.event;
if(oEvent.button==2)
alert("滑鼠右鍵不可用");
}
document.onmousedown=block;
</script>

❸ 我就想問下,js到底能不能在某個html頁面禁止瀏覽器的後退按鈕。因為表單提交後想再回去是不現實的

這種可以採用一下方式:

1、回退後,產生一個前進事件

這種方式,不算是一個滿意的解決方式。因為用戶能體驗到,界面的後退,前進。體驗不好。

javascript:window.history.forward(1);

2、禁用鍵盤的backspace鍵

這種做法,沒有辦法消除滑鼠的誤操作

<scripttype="text/javascript">

//處理鍵盤事件禁止後退鍵(Backspace)密碼或單行、多行文本框除外functionbanBackSpace(e){varev=e||window.event;//獲取event對象varobj=ev.target||ev.srcElement;//獲取事件源vart=obj.type||obj.getAttribute('type');//獲取事件源類型//獲取作為判斷條件的事件類型varvReadOnly=obj.getAttribute('readonly');
varvEnabled=obj.getAttribute('enabled');
//處理null值情況vReadOnly=(vReadOnly==null)?false:vReadOnly;
vEnabled=(vEnabled==null)?true:vEnabled;

//當敲Backspace鍵時,事件源類型為密碼或單行、多行文本的,//並且readonly屬性為true或enabled屬性為false的,則退格鍵失效varflag1=(ev.keyCode==8&&(t=="password"||t=="text"||t=="textarea")
&&(vReadOnly==true||vEnabled!=true))?true:false;

//當敲Backspace鍵時,事件源類型非密碼或單行、多行文本的,則退格鍵失效varflag2=(ev.keyCode==8&&t!="password"&&t!="text"&&t!="textarea")
?true:false;

//判斷if(flag2){
returnfalse;
}
if(flag1){
returnfalse;
}
}

//禁止後退鍵作用於Firefox、Operadocument.onkeypress=banBackSpace;
//禁止後退鍵作用於IE、Chromedocument.onkeydown=banBackSpace;

</script>

3、終極方案:

也是查找了好多資料才找到的,這種方式,可以消除 後退的所有動作。包括 鍵盤、滑鼠手勢等產生的後退動作。

<scriptlanguage="javascript">//防止頁面後退
history.pushState(null,null,document.URL);
window.addEventListener('popstate',function(){
history.pushState(null,null,document.URL);
});
</script>

❹ 用js如何控制 html5 video的快進後退。不要第三方插件。繼續代碼。

代碼如下:

<scripttype="text/javascript">functionvidplay() {varvideo=

document.getElementById("Video1");varbutton =

document.getElementById("play");if(video.paused) {

video.play();

button.textContent ="||";

}else{

video.pause();

button.textContent =">"

}

}functionrestart() {varvideo = document.getElementById("Video1");

video.currentTime = 0;

}functionskip(value) {varvideo = document.getElementById("Video1");

video.currentTime += value;

}</script></head><body><videoid="Video1">// Replace these with your own video files.<sourcesrc="demo.mp4"type="video/mp4"/>

<sourcesrc="demo.ogv"type="video/ogg"/>HTML5 Video is required for this example.<ahref="demo.mp4">Download the video</a>file.</video><divid="buttonbar">

<buttonid="restart"onclick="restart();">[]</button><buttonid="rew"onclick="skip(-10)"><<</button><buttonid="play"onclick="vidplay()">></button>

<buttonid="fastFwd"onclick="skip(10)">>></button></div>

(4)js控制瀏覽器前進後退擴展閱讀:

注意事項

一、history.pushState(data, title [, url])

往歷史記錄堆棧頂部添加一條記錄;

data: onpopstate事件觸發時作為參數傳遞過去;

title:頁面標題,當前所有瀏覽器都會忽略此參數;

url: 頁面地址,可選,預設為當前頁地址;

二、history.replaceState(data, title [, url])

更改當前的歷史記錄,參數同上;

三、history.state:

用於存儲以上方法的data數據,不同瀏覽器的讀寫許可權不一樣;

四、window.onpopstate:響應pushState或replaceState的調用;

HTML實現 後退【window.history.back()】默認

HTML實現 後退【window.history.back(-1)】 括弧裡面的負數字代表後退幾個頁面,如果是-2的話就代表後退2頁

HTML實現 前進【window.history.forward()】//不常用

HTML實現 前進【window.history.forward(1)】//不常用 括弧裡面的正數就代表要前進的頁。如果是3就表示前進3頁

[html] view plain

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<body>

<p>這是第一個頁面</p>

<a href="HTMLPage2.htm">到dom頁</a>

<input type="button" onclick="javascript:window.history.back()" value="後退"/>

<input type="button" onclick="javascript:window.history.forward()" value="前進" />

</body>

</html>

[html] view plain

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<body>

<p>這是第二個頁面</p>

<a href="HTMLPage3.htm">轉到第一頁</a>

<a href="javascript:window.history.back()">後退</a>

<a href="javascript:window.history.forward()">前進</a>

</body>

</html>

❺ js 監聽瀏覽器的返回按鈕事件在安卓和ios的坑

這是ajax的一個經典問題,很多框架都提供了解決方案,重點是模擬瀏覽器的前進後退。

對於IE,可以用一個隱藏框架,對框架內容的導航會使得前進後退按鈕被觸發。
對以FF,可以用Hash,即改變http://www.url.com/#abc井號後面的部分,前進後退按鈕同樣被觸發。

這樣就能既讓瀏覽器前進後退按鈕被觸發,同時又不離開本頁面。具體方法如下:

1.resize事件 (window).resize(function() { var width = (this).width(); var height = (this).height(); });

2.js條用這個方法 function closewindow{ history.go(-1); }

3.<input type="button" value="後退" onClick="history.back();"> 或 <input type="button" value="後退" onClick="history.go(-1);">
4.window.location.replace Location對象的replace()方法將用指定的URL替換瀏覽器歷史列表中的當前URL,而不是在歷史列表中創建一個新的項,因此,就不能使用IE的後退按鈕來返回原始文檔了。 2.window.open(FF無效...

❻ js中網頁前進和後退的代碼

前進: history.forward();=history.go(1);
後退: history.back();=history.go(-1);
注意事項:前進後退按鈕是需要在特定環境下才有效果的,即你需要從另一個頁面進入到這個頁面後,點擊這個後退按鈕才有後退的效果,否則是沒有的。
【拓展資料】
javascript中的後退和刷新;
<input type=button value=刷新 onclick="window.location.reload()">
<input type=button value=前進 onclick="window.history.go(1)">
<input type=button value=後退 onclick="window.history.go(-1)">
<input type=button value=前進 onclick="window.history.forward()">
<input type=button value=後退 onclick="window.history.back()"> 後退+刷新<input type=button value=後退 onclick="window.history.go(-1);window.location.reload()">在C# Web程序中,如為頁面按鈕寫返回上一頁代碼
this.RegisterClientScriptBlock("E", "<script language=javascript>history.go(-2);</script>");
其中,history.go(-2),要寫為-2,因在按鈕事件觸發前,已刷新一次頁面,所以應是-2。
Response.Write("<script language=javascript>history.go(-2);</script>");
此處也要寫為「-2」。跟直接寫腳本的有所不同。history.back()是會上一頁
i=1
history.go(i)去指定的某頁
如果是history.go(0)那就是刷新這兩個屬於JS代碼,相當於IE的前進、後退功能。
具體的用處就要看什麼時候需要這個就用上。比如用戶注冊時的驗證是後台驗證,不符合要求的時候就可以用這個,可以最大限度保證用戶少重復輸入數據。
例如:載入頁面:
function onLoadPage(){
if(event.srcElement.tagName=="SPAN"){
oFrame=top.window.middle.frames[2];
oTxt=event.srcElement.innerText;
switch(oTxt){
case "前 進":
oFrame.history.go(1);
case "後 退":
oFrame.history.back();
case "刷 新":
oFrame.location.reload();
}
}
}

打開一個jsp頁面,肯定是用客戶端腳本進行刷新了。
Javascript刷新頁面的幾種方法:
1 history.go(0)
2 location.reload()
3 location=location
4 location.assign(location)
5 document.execCommand('Refresh')
6 window.navigate(location)
7 location.replace(location)
8 document.URL=location.href

閱讀全文

與js控制瀏覽器前進後退相關的資料

熱點內容
剛復制的文件找不到怎麼辦 瀏覽:724
試運行適用於哪些體系文件 瀏覽:987
ghost文件復制很慢 瀏覽:967
傑德原車導航升級 瀏覽:240
編程dest是什麼意思 瀏覽:935
linux埠鏡像 瀏覽:820
iphone5屏幕清塵 瀏覽:157
機頂盒密碼怎麼改 瀏覽:672
w7系統下載32位教程 瀏覽:618
pcb文件包括哪些內容 瀏覽:598
g00文件 瀏覽:607
用bat程序刪除程序 瀏覽:516
dnf鬼泣90版本打安圖恩 瀏覽:668
245倒角編程怎麼計算 瀏覽:599
可以買生活用品的app有哪些 瀏覽:175
cad在c盤產生的文件夾 瀏覽:541
聯想手機解鎖工具 瀏覽:696
瑞銀3887win10 瀏覽:833
學網路編程哪個好 瀏覽:805
手機vmos導入的文件在哪裡 瀏覽:115

友情鏈接