ホームページ > 記事 > ウェブフロントエンド > Ajax読み込み外部ページポップアップレイヤーエフェクト実装方法
この記事では、Ajax ロードのポップアップ レイヤーの実装スキルを含む、外部ページをロードするポップアップ レイヤー効果を実装する方法を主に紹介します。必要な友人は参考にしてください。この記事の例では、Ajax による外部ページ読み込みメソッドのポップアップ レイヤー効果の実装について説明します。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Ajax加载外部页面的一个弹出层效果</title> <style> body {margin:0px} #Loading {position:absolute;z-index:10;left:10px;top:10px;border:1px #666666 solid;background:#eeeeee;width:10px;height:10px} .LoadContent {width:100%;height:100%;overflow:auto} </style> <script LANGUAGE="JavaScript"> <!-- function $(){return document.getElementById?document.getElementById(arguments[0]):eval(arguments[0]);} var OverH,OverW,ChangeDesc,ChangeH=50,ChangeW=50; function Openp(_Dw,_Dh,_Desc) { $("Loading").innerHTML="Loading..."; OverH=_Dh;OverW=_Dw;ChangeDesc=_Desc; $("Loading").style.display=''; if(_Dw>_Dh){ChangeH=Math.ceil((_Dh-10)/((_Dw-10)/50))}else if(_Dw<_Dh){ChangeW=Math.ceil((_Dw-10)/((_Dh-10)/50))} $("Loading").style.top=(document.documentElement.clientHeight-10)/2+"px"; $("Loading").style.left=(document.documentElement.clientWidth-10)/2+"px"; OpenNow() } var Nw=10,Nh=10; function OpenNow() { if (Nw>OverW-ChangeW)ChangeW=2; if (Nh>OverH-ChangeH)ChangeH=2; Nw=Nw+ChangeW;Nh=Nh+ChangeH; if(OverW>Nw||OverH>Nh) { if(OverW>Nw) { $("Loading").style.width=Nw+"px"; $("Loading").style.left=(document.documentElement.clientWidth-Nw)/2+"px"; } if(OverH>Nh) { $("Loading").style.height=Nh+"px"; $("Loading").style.top=(document.documentElement.clientHeight-Nh)/2+"px" } window.setTimeout("OpenNow()",10) }else{ Nw=10;Nh=10;ChangeH=50;ChangeW=50; AjaxGet(ChangeDesc) } } //创建XML对象 function createXMLHttps(){ var ret = null; try {ret = new ActiveXObject('Msxml2.XMLHTTP')} catch (e) { try {ret = new ActiveXObject('Microsoft.XMLHTTP')} catch (ee) {ret = null} } if (!ret&&typeof XMLHttpRequest !='undefined') ret = new XMLHttpRequest(); return ret; } function AjaxGet(URL) { var xmlhttp = createXMLHttps(); xmlhttp.open("Get",URL,true); xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4 && xmlhttp.status==404) {$("Loading").innerHTML='读取页面失败,文件'+URL+'不存在!';return} if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { $("Loading").innerHTML="<p class='LoadContent'>"+xmlhttp.responseText+"</p>"; } } xmlhttp.send(null); } //--> </script> </head> <body> <a href="javascript:Openp(500,300,'index.html')">首页 500*300</a><br><br> <a href="javascript:Openp(500,200,'index.html')">Test 500*200</a><br><br> <a href="javascript:Openp(200,500,'l.html')">子页面 200*500</a><br><br> <p id="Loading" style="display:none" ondblclick="this.style.display='none'"></p> 注意:需加载的文件必须在子目录下,也就是本文件需处于上级才行。页面编码UTF8。 </body> </html>
以上、皆様の参考になれば幸いです。
関連記事:
Ajaxクロスドメイン(同一基本ドメイン名)でのフォーム送信方法AJAX送信フォームデータ分析例Ajax関連とそのメリット・デメリットについての簡単な説明以上がAjax読み込み外部ページポップアップレイヤーエフェクト実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。