
文章插圖
在最后臺頁面的時候,我們常常會用到一個彈層對話框來確認用戶的操作或者是獲取一些數(shù)據(jù)的輸入 。在網(wǎng)上有些現(xiàn)成的插件是可以實現(xiàn)這個功能的,為了方便大家理解這個原理我們自己動手來實現(xiàn)這個效果 。
我們以thinKphp框架下為例,做好以下幾個準備工作:
1、Jquery.js文件準備,下載好這個文件存放起來,最新版是 jQuery 3.3.1,這個百度一下就能找到下載地址 。
2、準備頁面模板,也就是需要在上面彈出對話框的頁面,也叫父頁面 。
3、準備彈層模板,這個彈層模板就是用來顯示提示用戶操作內(nèi)容的頁面 。
4、部署好THINKphp的框架,確??梢哉TL問渲染模板(這個請參考TP的部署教程),當然你也可以選擇不用這個,直接搭建http的訪問模式也是可以的 。
做好以上準備工作以后我們來看一下關(guān)鍵代碼:
1、在父頁面添加文件引用,并在初始頁面的時候添加一個透明層,JS代碼片段如下
var msgboxhtm="<div class="msgbg" id="msgbg"></div>";$("body").append(msgboxhtm);$(".msgbg").hide();$(".msgbox").find("h1").click(function(){$(".msgbg").hide();});初始化的時候我們將這個層隱藏起來,第二段代碼是注冊一個對話框的關(guān)閉操作 。
2、定義一個點擊事件,執(zhí)行彈出命令,在這個邏輯里我們需要指定一url地址,指向需要彈出的模板(tinkphp就直接指向一個控制器就行了) 。本例中g(shù)eturl就是這個地址,這個地址使用get方式獲取數(shù)據(jù) 。
$(".button").click(function(){var action=$(this).attr("action");var geturl=$(this).attr("geturl");switch(action){case"showdialog":var result="";$.get(geturl,function(result){$(".msgbg").html(result);});$(".msgbg").fadeIn(500);$(".msgbox").fadeIn(500);break;case"closebox":$(".msgbg").hide();break;default:break;}});基本運行流程是:當我們單擊按鈕后,按鈕會讀取屬性值action,用來判斷當前的操作是否為彈出對話框操作,如果是的話就讀取geturl屬性值取得預設(shè)的對話框模板地址,然后提交給get方法獲取數(shù)據(jù)(這里的get是Jquery封裝好的一個方法,是異步獲取數(shù)據(jù)的一種),在回調(diào)函數(shù)里寫上獲取數(shù)據(jù)后的處理方式,將返回的數(shù)據(jù)填入動態(tài)添加的層里,并顯示出來,這樣就實現(xiàn)了彈層效果 。是不是很簡單呢?
一下就是最終效果了
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助:- 既是食材也是藥材 麥冬的功效與作用
- 計算機專業(yè)技能 it技能有哪些方面的技術(shù)
- linux和windows的區(qū)別 linux系統(tǒng)是什么語言
- arpanet屬于的交換網(wǎng)絡(luò) arpanet的五大特點
- 制作ar需要的軟件 ar技術(shù)和vr技術(shù)的區(qū)別是多少
- 網(wǎng)絡(luò)打印機出現(xiàn)脫機狀態(tài) 怎么查看網(wǎng)絡(luò)打印機的ip地址是多少
- purchase的用法搭配 purchaseorder郵件
- 慢跑的好處與慢跑的最佳時間
- 如何根據(jù)體形選擇適合自己的有氧運動
- 慢跑的7大好處
