Heim  >  Artikel  >  Web-Frontend  >  So implementieren Sie eine Maskenebene in HTML. So verwenden Sie eine Maskenebene bei der Erstellung von HTML_HTML/Xhtml_Webseiten

So implementieren Sie eine Maskenebene in HTML. So verwenden Sie eine Maskenebene bei der Erstellung von HTML_HTML/Xhtml_Webseiten

WBOY
WBOYOriginal
2016-05-16 16:45:591626Durchsuche

Durch die Verwendung einer Maskenebene in Webseiten können wiederholte Vorgänge verhindert und das Laden beschleunigt werden. Außerdem können modale Popup-Fenster simuliert werden.

Implementierungsidee: Ein DIV dient als Maskenebene und ein DIV zeigt das ladende dynamische GIF-Bild an. Im folgenden Beispielcode wird auch gezeigt, wie die Ebene der Anzeige- und Ausblendmaske auf der Iframe-Unterseite aufgerufen wird.

Beispielcode:

index.html

XML/HTML-CodeInhalt in die Zwischenablage kopieren
  1. >  
  2. <html lang="zh- CN">  
  3. <Kopf>  
  4. <meta charset="utf- 8">  
  5. <meta http-equiv=" X-UA-kompatibel" Inhalt="IE=edge">  
  6. <title>HTML遮罩层Titel>  
  7. <link rel="stylesheet"  href="css/index.css">  
  8. Kopf>  
  9. <Körper>  
  10.     <div class="header"  id="header">  
  11.         <div class="title- außen">  
  12.             <span class="title" >  
  13.                 HTML遮罩层使用   
  14.             span>  
  15.         div>  
  16.     div>  
  17.     <div class="body"  id="body">  
  18.         <iframe id="iframeRight"  name="iframeRight" width="100%" Höhe="100%"  
  19.             Scrollen="Nein" Rahmenrand="0"  
  20.             Stil="border: 0px;margin: 0px; padding: 0px; width: 100%; height: 100%;overflow : hidden;"  
  21.             onload="rightIFrameLoad(this)" src="body.html">iframe>  
  22.     div>  
  23.        
  24.       
  25.     <div id="overlay"  class="overlay">div>  
  26.       
  27.     <div id="loadingTip"  class="loading-tip">  
  28.         <img src="images/ Loading.gif" />  
  29.     div>  
  30.        
  31.       
  32.     <div class="modal"  id="modalDiv">div>  
  33.        
  34.     <script type='text/ javascript' src="js/jquery-1.10.2.js"> Skript>  
  35.     <Skript Typ="text/ javascript" src="js/index.js">< ;/Skript>  
  36. Körper>  
  37. html>  

index.css

CSS-Code复制内容到剪贴板
  1. * {   
  2.     Marge: 0;   
  3.     Auffüllung: 0;   
  4. }   
  5.   
  6. html, body {   
  7.     Breite: 100 %;   
  8.     Höhe: 100 %;   
  9.     Schriftgröße14px;   
  10. }   
  11.   
  12. div.header {   
  13.     Breite: 100 %;   
  14.     Höhe100px;   
  15.     border-bottom1px gestrichelt blau;   
  16. }   
  17.   
  18. div.title-outer {   
  19.     Positionrelativ;   
  20.     oben: 50 %;   
  21.     Höhe30px;   
  22. }   
  23. span.title {   
  24.     Textausrichtunglinks;   
  25.     Positionrelativ;   
  26.     links: 3 %;   
  27.     oben: -50 %;   
  28.     Schriftgröße22px;   
  29. }   
  30.   
  31. div.body {   
  32.     Breite: 100 %;   
  33. }   
  34. .overlay {   
  35.     Positionabsolut;   
  36.     oben0px;   
  37.     links0px;   
  38.     z-index: 10001;   
  39.     Anzeige:keine;   
  40.     filter:alpha(opacity=60);   
  41.     Hintergrundfarbe#777;   
  42.     Deckkraft: 0,5;   
  43.     -moz-opacity: 0,5;   
  44. }  
  45. .loading-tip {   
  46.     z-index: 10002;   
  47.     Positionfest;   
  48.     Anzeige:keine;   
  49. }   
  50. .loading-tip img {   
  51.     Breite:100px;   
  52.     Höhe:100px;   
  53. }   
  54.   
  55. .modal {   
  56.     Position:absolut;   
  57.     Breite600px;   
  58.     Höhe360px;   
  59.     Rahmen1px fest rgba(0, 0, 0, 0,2);   
  60.     box-shadow: 0px 3px 9px rgba (0, 0, 0, 0,5);   
  61.     Anzeigekeine;   
  62.     z-index: 10003;   
  63.     Rahmen-Radius: 6px;   
  64. }   
  65.   

index.js

JavaScript-Code复制内容到剪贴板
  1. Funktion rightIFrameLoad(iframe) {
  2.  var pHeight = getWindowInnerHeight() - $('#header').height() - 5 ;
  3.  
  4. $('div.body').height(pHeight);
  5. console.log(pHeight);
  6.  
  7. }
  8. // Browser-Kompatibilität Ermitteln Sie die Höhe des Browser-Ansichtsfensters
  9. Funktion getWindowInnerHeight() {
  10. var winHeight = window.innerHeight
  11. ||. (document.documentElement && document.documentElement.clientHeight)
  12. ||. (document.body && document.body.clientHeight);
  13. return
  14. winHeight;  
  15. }
  16. // Browserkompatibilität Ermitteln Sie die Breite des Browser-Ansichtsfensters
  17. Funktion
  18. getWindowInnerWidth() {
  19. var
  20. winWidth = window.innerWidth
  21. ||. (document.documentElement && document.documentElement.clientWidth)
  22. ||. (document.body && document.body.clientWidth);
  23. return
  24. winWidth;
  25.  
  26. }
  27. /**
  28. * Maskenebene anzeigen
  29. */
  30. Funktion showOverlay() {
  31. //Die Breite und Höhe der Maskenebene entsprechen der Breite bzw. Höhe des Seiteninhalts
  32. $(
  33. '.overlay').css({'height'
  34. :$(document). height(),
  35. 'width':$(document).width()}); $('.overlay').show( }
  36. /**
  37. * Ladeaufforderung anzeigen
  38. */
  39. Funktion showLoading() {
  40. //Zeigen Sie zuerst die Maskenebene an
  41. showOverlay();
  42. // Das Fenster mit der Ladeaufforderung ist zentriert
  43. $("#loadingTip").css('top',
  44. (getWindowInnerHeight() - $("#loadingTip").height()) / 2 'px');
  45. $("#loadingTip").css('left',
  46. (getWindowInnerWidth() - $("#loadingTip").width()) / 2 'px');
  47.                                                         
  48. $(
  49. "#loadingTip").show();
  50. $(document).scroll(
  51. function() {
  52. return false; });
  53. }
  54. /**
  55. * Ladeaufforderung ausblenden
  56. */
  57. Funktion
  58. hideLoading() { $(
  59. '.overlay'
  60. ).hide( $(
  61. "#loadingTip"
  62. ).hide( $(document).scroll(
  63. function
  64. () {
  65. zurück
  66. wahr; });
  67. }
  68. /**
  69. * Simulieren Sie das modale Popup-Fenster DIV
  70. * @param innerHtml modales Fenster HTML-Inhalt
  71. */
  72. Funktion showModal(innerHtml) {
  73. // Holen Sie sich den DIV, der zum Anzeigen des modalen Simulationsfensters verwendet wird
  74. var dialog = $('#modalDiv');
  75.  
  76. // Inhalt festlegen
  77. dialog.html(innerHtml);
  78.  
  79. // Modales Fenster DIV-Fenster ist zentriert
  80. dialog.css({
  81.  'top' : (getWindowInnerHeight() - dialog.height()) / 2 'px' ,
  82.  'left' : (getWindowInnerWidth() - dialog.width()) / 2 'px'
  83. });
  84.  
  85. // Fenster DIV abgerundete Ecken
  86. Dialog.find('.modal-container').css('border-radius', '6px');
  87.  
  88. // Modales Fenster-Schaltflächen-Ereignis
  89. dialog.find('.btn-close').click(function(){
  90. closeModal();
  91. });
  92.  
  93. //Maskenebene anzeigen
  94. showOverlay();
  95.  
  96. //Maskenebene anzeigen
  97. dialog.show();
  98. }
  99. /**
  100. * Simulieren Sie das Schließen des modalen Fensters DIV
  101. */
  102. Funktion closeModal() {
  103. $('.overlay').hide(
  104. $('#modalDiv').hide();
  105. $('#modalDiv').html('');
  106. }

body.html

XML/HTML-CodeInhalt in die Zwischenablage kopieren
  1. >  
  2. <html lang="zh- CN">  
  3. <Kopf>  
  4. <meta charset="utf- 8">  
  5. <meta http-equiv=" X-UA-kompatibel" Inhalt="IE=edge">  
  6. <title>body 页面Titel>  
  7. <Stil Typ="text/ css">  
  8. * {   
  9.     Rand: 0;   
  10.     padding: 0;   
  11. }   
  12.   
  13. html, body {   
  14.     Breite: 100 %;   
  15.     Höhe: 100 %;   
  16. }   
  17.   
  18. .outer {   
  19.     Breite: 200px;   
  20.     Höhe: 120px;   
  21.     Position: relativ;   
  22.     oben: 50 %;   
  23.     links: 50 %;   
  24. }   
  25.   
  26. .inner {   
  27.     Breite: 200px;   
  28.     Höhe: 120px;   
  29.     Position: relativ;   
  30.     oben: -50 %;   
  31.     links: -50 %;   
  32. }   
  33.   
  34. .button {   
  35.     Breite: 200px;   
  36.     Höhe: 40px;   
  37.     Position: relativ;   
  38. }   
  39.     
  40. .button#btnShowLoading {   
  41.     oben: 0;   
  42. }   
  43.   
  44. .button#btnShowModal {   
  45.     oben: 30 %;   
  46. }
  47. Stil>
  48. <Skript Typ="text/ Javascript">
  49.  
  50. Funktion showOverlay() {
  51. // Rufen Sie das übergeordnete Fenster auf, um die Maskenebene und die Ladeaufforderungen anzuzeigen
  52. window.top.window.showLoading();
  53. // Verwenden Sie einen Timer, um das Schließen der Ladeaufforderung zu simulieren
  54. setTimeout(function() {
  55. window.top.window.hideLoading();
  56. }, 3000);
  57. }
  58. Funktion showModal() {
  59. // Rufen Sie die übergeordnete Fenstermethode auf, um ein modales Popup-Fenster zu simulieren
  60. window.top.showModal($('#modalContent').html());
  61. }
  62.  
  63. Skript>
  64. Kopf>
  65. <Körper>
  66.  <div class='outer' >
  67.  <div class='inner' >
  68.  <Schaltfläche id='btnShowLoading' class='button' onclick='showOverlay();'>Klicken Sie, um die Maskenebene einzublendenSchaltfläche>
  69.  <Schaltfläche id='btnShowModal' class='button' onclick='showModal();'>Klicken Sie, um das modale Fenster zu öffnenSchaltfläche>
  70. div>
  71.  div> 
  72.  
  73.  <div id='modalContent' Stil='display: none;'>
  74.  <div class='modal- Container' style='width: 100%;height: 100%;background-color: white;'>
  75.  <div style='width: 100%;Höhe: 49px;Position: relativ;links: 50%;oben: 50%;'>
  76.                 Größe: 36px; Breite: 100 %; text-align:center; display: inline-block; Position: erben; left: -50%;top: -50%;'>模态窗口1span >               div>  
  77.             <Schaltfläche Klasse
  78. =
  79. 'btn- close' style='width: 100px; Höhe: 30px; Position: absolut; rechts: 30px; unten: 20px;'>关闭Schaltfläche>         div>  
  80.     div>  
  81.     <script type
  82. =
  83. 'text/ javascript' src="js/jquery-1.10.2.js"> Skript>   Körper>  
  84. html>  
  85.    运行结果:
  86. 初始化
显示遮罩层和Laden提示

显示遮罩层和模拟弹出模态窗口

以上就是本文的全部内容,希望对大家的学习有所帮助.

原文:

http://www.cnblogs.com/haoqipeng/p/html-overlay.html

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn