亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

使用openSpeDiv方法實現Ecshop登錄彈窗框效果

2019-11-19 17:10:46
字體:
來源:轉載
供稿:網友

在ECSHOP的目錄/JS/common.js中有一個openSpeDiv方法是實現ECSHOP的彈窗效果的。如果我們想制作一個登錄彈窗框,可以截取這個方法里的部分代碼。

//生成屬性選擇層 function openSpeDiv(message, goods_id, parent)  {  var _id = "speDiv";  var m = "mask";  if (docEle(_id)) document.removeChild(docEle(_id));  if (docEle(m)) document.removeChild(docEle(m));  //計算上卷元素值  var scrollPos;   if (typeof window.pageYOffset != 'undefined')   {    scrollPos = window.pageYOffset;   }   else if (typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat')   {    scrollPos = document.documentElement.scrollTop;   }   else if (typeof document.body != 'undefined')   {    scrollPos = document.body.scrollTop;   } <span style="color:#ff0000;"> var i = 0;  var sel_obj = document.getElementsByTagName('select');  while (sel_obj[i])  {   sel_obj[i].style.visibility = "hidden";   i++;  }</span>  // 新激活圖層  var newDiv = document.createElement("div");  newDiv.id = _id;  newDiv.style.position = "absolute";  newDiv.style.zIndex = "10000";  newDiv.style.width = "300px";  newDiv.style.height = "260px";  newDiv.style.top = (parseInt(scrollPos + 200)) + "px";  newDiv.style.left = (parseInt(document.body.offsetWidth) - 200) / 2 + "px"; // 屏幕居中  newDiv.style.overflow = "auto";   newDiv.style.background = "#FFF";  newDiv.style.border = "3px solid #59B0FF";  newDiv.style.padding = "5px";  //生成層內內容  newDiv.innerHTML = '<h4 style="font-size:14; margin:15 0 0 15;">' + select_spe + "</h4>";  <span style="color:#ff0000;">for (var spec = 0; spec < message.length; spec++)  {    newDiv.innerHTML += '<hr style="color: #EBEBED; height:1px;"><h6 style="text-align:left; background:#ffffff; margin-left:15px;">' + message[spec]['name'] + '</h6>';    if (message[spec]['attr_type'] == 1)    {     for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)     {      if (val_arr == 0)      {       newDiv.innerHTML += "<input style='margin-left:15px;' type='radio' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' checked /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + '</font> [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';         }      else      {       newDiv.innerHTML += "<input style='margin-left:15px;' type='radio' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + '</font> [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';         }     }      newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";    }    else    {     for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)     {      newDiv.innerHTML += "<input style='margin-left:15px;' type='checkbox' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + ' [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';        }     newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";    }  }  newDiv.innerHTML += "<br /><center>[<a href='javascript:submit_div(" + goods_id + "," + parent + ")' class='f6' >" + btn_buy + "</a>] [<a href='javascript:cancel_div()' class='f6' >" + is_cancel + "</a>]</center>";</span>  document.body.appendChild(newDiv);  // mask圖層  var newMask = document.createElement("div");  newMask.id = m;  newMask.style.position = "absolute";  newMask.style.zIndex = "9999";  newMask.style.width = document.body.scrollWidth + "px";  newMask.style.height = document.body.scrollHeight + "px";  newMask.style.top = "0px";  newMask.style.left = "0px";  newMask.style.background = "#FFF";  newMask.style.filter = "alpha(opacity=30)";  newMask.style.opacity = "0.40";  document.body.appendChild(newMask); }  <span style="color: rgb(255, 0, 0);"> var i = 0;  var sel_obj = document.getElementsByTagName('select');  while (sel_obj[i])  {   sel_obj[i].style.visibility = "hidden";   i++;  }</span> 

上面代碼是與下拉選擇框有關,去掉。

<span style="color: rgb(255, 0, 0);">for (var spec = 0; spec < message.length; spec++)  {    newDiv.innerHTML += '<hr style="color: #EBEBED; height:1px;"><h6 style="text-align:left; background:#ffffff; margin-left:15px;">' + message[spec]['name'] + '</h6>';    if (message[spec]['attr_type'] == 1)    {     for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)     {      if (val_arr == 0)      {       newDiv.innerHTML += "<input style='margin-left:15px;' type='radio' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' checked /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + '</font> [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';         }      else      {       newDiv.innerHTML += "<input style='margin-left:15px;' type='radio' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + '</font> [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';         }     }      newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";    }    else    {     for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)     {      newDiv.innerHTML += "<input style='margin-left:15px;' type='checkbox' name='spec_" + message[spec]['attr_id'] + "' value='" + message[spec]['values'][val_arr]['id'] + "' id='spec_value_" + message[spec]['values'][val_arr]['id'] + "' /><font color=#555555>" + message[spec]['values'][val_arr]['label'] + ' [' + message[spec]['values'][val_arr]['format_price'] + ']</font><br />';        }     newDiv.innerHTML += "<input type='hidden' name='spec_list' value='" + val_arr + "' />";    }  }  newDiv.innerHTML += "<br /><center>[<a href='javascript:submit_div(" + goods_id + "," + parent + ")' class='f6' >" + btn_buy + "</a>] [<a href='javascript:cancel_div()' class='f6' >" + is_cancel + "</a>]</center>";</span> 

上面這與彈窗框里的內容有關,也去掉。

要制作一個登錄彈窗框,我們再把需要傳入的參數去掉,改一下方法名,var _id和var m的值,然后在newDiv.innerHTML 里面加上你想在彈窗框顯示的HTML代碼即可改寫該方法。

新方法如下:

//彈窗登錄 function openLoginDiv()  {  var _id = "loginDiv";  var m = "loginMask";  if (docEle(_id)) document.removeChild(docEle(_id));  if (docEle(m)) document.removeChild(docEle(m));  //計算上卷元素值  var scrollPos;   if (typeof window.pageYOffset != 'undefined')   {    scrollPos = window.pageYOffset;   }   else if (typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat')   {    scrollPos = document.documentElement.scrollTop;   }   else if (typeof document.body != 'undefined')   {    scrollPos = document.body.scrollTop;   }  // 新激活圖層  var newDiv = document.createElement("div");  newDiv.id = _id;  newDiv.style.position = "absolute";  newDiv.style.zIndex = "10000";  newDiv.style.width = "300px";  newDiv.style.height = "260px";  newDiv.style.top = (parseInt(scrollPos + 200)) + "px";  newDiv.style.left = (parseInt(document.body.offsetWidth) - 200) / 2 + "px"; // 屏幕居中  newDiv.style.overflow = "auto";   newDiv.style.background = "#FFF";  newDiv.style.border = "3px solid #59B0FF";  newDiv.style.padding = "5px";  //生成層內內容  newDiv.innerHTML = '<form id="ajax_loginForm">用戶名:<br><input type="text" name="username" id="ajax_username"/>密碼:<br><input type="password" name="username" id="ajax_password"/><br><button type="button">登錄</button> <button type="button" onclick="closeLoginForm()">關閉</button></form>';  document.body.appendChild(newDiv);  // mask圖層  var newMask = document.createElement("div");  newMask.id = m;  newMask.style.position = "absolute";  newMask.style.zIndex = "9999";  newMask.style.width = document.body.scrollWidth + "px";  newMask.style.height = document.body.scrollHeight + "px";  newMask.style.top = "0px";  newMask.style.left = "0px";  newMask.style.background = "#FFF";  newMask.style.filter = "alpha(opacity=30)";  newMask.style.opacity = "0.40";  document.body.appendChild(newMask); } 

然后在themes/default/library/page_header.lbi文件上把彈窗登錄按鈕顯示到你想添加的位置,加上這一代碼段:

<a href="JavaScript:openLoginDiv();" rel="external nofollow" >彈窗登錄</a> 

再修改一下樣式,讓其更漂亮。樣式修改在模板目錄themes/default/style.css。加上這一段:

#ajax_loginForm{padding:10px; line-height:2em;} #ajax_loginForm input{width:98%; height:35px; padding:0 1%; line-height:35px; border:1px solid #e7e7e7; border-radius:3px;} #ajax_loginForm button{background:#ff6599; border: none; color:#fff; font-size:16px; border-radius:3px; padding:5px 15px; cursor:pointer;} 

最后再寫個關閉彈窗的js事件即可。方法我寫在common.js文件下的openLoginDiv()之后

function closeLoginForm(){   document.body.removeChild(docEle('loginDiv'));   document.body.removeChild(docEle('loginMask')); }

效果如圖:

以上所述是小編給大家介紹的使用openSpeDiv方法實現Ecshop登錄彈窗框效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产噜噜噜噜噜久久久久久久久| 中文字幕亚洲一区二区三区| 久久亚洲精品一区二区| 久久久在线观看| 国产999在线观看| 伊人久久男人天堂| 国产在线观看91精品一区| 欧美成人午夜免费视在线看片| 91在线视频精品| 亚洲韩国青草视频| 欧美区在线播放| 国产精品自在线| 欧美视频在线观看免费网址| 中文字幕综合在线| 国产精品亚洲片夜色在线| 97色在线视频| 久久精品视频免费播放| 一区二区欧美久久| 亚洲精品国精品久久99热| 日本三级久久久| 欧洲日韩成人av| 欧美精品在线免费播放| 亚洲美女激情视频| 亚洲欧美日本另类| 免费不卡欧美自拍视频| 欧美激情一区二区久久久| 精品久久久久久久大神国产| 国产97免费视| 久久人人爽人人爽人人片亚洲| 中文字幕日韩免费视频| 日韩福利伦理影院免费| 久久综合伊人77777蜜臀| 国模私拍一区二区三区| 91在线高清免费观看| 青青久久av北条麻妃海外网| 国产色综合天天综合网| 久久精品免费播放| 伊人久久久久久久久久| 亚洲欧美自拍一区| 91在线高清免费观看| 在线亚洲午夜片av大片| 亚洲天堂视频在线观看| 欧美成人性色生活仑片| 91tv亚洲精品香蕉国产一区7ujn| 亚洲伊人久久综合| 日韩av电影中文字幕| 国产福利视频一区| 日韩av电影在线免费播放| 国产一区二区三区在线| 国产精品91久久久久久| 国产精品网红直播| 91精品国产成人| 日韩av网站大全| 国产成人精品免高潮在线观看| 久久久久亚洲精品成人网小说| 亚洲欧美日韩图片| 亚洲欧美成人网| 全色精品综合影院| 国产精品极品尤物在线观看| 国产欧美va欧美va香蕉在| 中日韩美女免费视频网站在线观看| 法国裸体一区二区| 亚洲精品国产综合久久| 日韩精品久久久久久福利| 国产一区香蕉久久| 欧美电影免费观看高清完整| 欧美另类极品videosbest最新版本| 久久精品视频导航| 日韩欧美中文字幕在线观看| 美日韩精品免费观看视频| 国产精品自在线| 俺去啦;欧美日韩| 亚洲网站视频福利| 国产一区二区在线免费视频| 永久555www成人免费| 久久久久国产精品免费| 91伊人影院在线播放| 91欧美激情另类亚洲| 日日骚av一区| 亚洲第一福利视频| 欧美风情在线观看| 狠狠色狠色综合曰曰| 国产一区二区三区毛片| 琪琪亚洲精品午夜在线| 精品视频—区二区三区免费| 欧美日韩在线影院| 亚洲最大成人在线| 69av成年福利视频| 中文字幕在线视频日韩| 久久久精品视频在线观看| 亚洲欧美第一页| 亚洲精品视频网上网址在线观看| 奇米影视亚洲狠狠色| 亚洲一区二区久久久| 91免费电影网站| 国产精品永久免费视频| 高清欧美电影在线| 久久成年人免费电影| 国产欧美韩国高清| 91精品在线观| 国产自产女人91一区在线观看| 精品视频—区二区三区免费| 欧美成人精品在线视频| 国产z一区二区三区| 亚洲福利视频久久| 国产亚洲精品久久久优势| 色综合久久久888| 成人有码在线视频| 国产剧情日韩欧美| 欧美日韩亚洲国产一区| 91在线视频一区| 久久精品国产免费观看| 国产精品视频在线观看| 5278欧美一区二区三区| 国产成人精品久久久| 亚洲视频视频在线| 国语自产偷拍精品视频偷| 色青青草原桃花久久综合| 国产亚洲免费的视频看| 中文字幕亚洲字幕| 国产精品美女久久久久av超清| 日本精品视频在线观看| 欧美性xxxxx极品娇小| 正在播放欧美一区| 国产精品xxxxx| 亚洲国产精品va在看黑人| 国产精品久久电影观看| 日本中文字幕不卡免费| 亚洲色图17p| 91免费欧美精品| 亚洲a级在线观看| 日韩在线一区二区三区免费视频| 亚洲国产精品电影在线观看| 国产亚洲精品久久久久久牛牛| 国产欧美日韩精品在线观看| 国产精品福利小视频| 久久综合伊人77777蜜臀| 欧美大片在线免费观看| 久久成人综合视频| 综合av色偷偷网| 欧美肥老妇视频| 一区二区av在线| 日韩视频中文字幕| 国产精品美女久久久久av超清| 久久久综合免费视频| 大量国产精品视频| 亚洲成人a级网| 操日韩av在线电影| 欧美特级www| 热re91久久精品国99热蜜臀| 精品一区二区三区四区在线| 精品露脸国产偷人在视频| 国产精品视频内| 午夜精品国产精品大乳美女| 色噜噜久久综合伊人一本| 日韩欧美在线网址| 久久人人看视频| 538国产精品视频一区二区| 国产精品自产拍在线观| 日韩最新av在线| 欧美国产在线电影| 亚洲免费一在线| 91亚洲精品久久久久久久久久久久| 91精品国产自产91精品|