天天看點

layer.open及父子頁面傳值

layer.open寫法:

layer.open({
			 type: 2,  //類型  2表示iframe層  1:頁面層
			  icon:2,
			  area: ['1050px','600px'],//彈出頁面的寬 高
			  /*shade: false,*/ //遮罩層透明度,預設false,也可以寫數字表示透明程度(如:0.1),數字越大,透明度越低
			  title: "我的标題", //顯示标題
			  skin: 'layui-layer-rim', //加上邊框
			  content: [ctx+'/test/hello?user.name='+"name"], 
			  //content  是一個url,可以通路背景,如果不想讓iframe出現滾動條,這樣寫content: ['http://baidu.com', 'no']
			
			});
           

layer.open彈出層向父頁面元素傳值:

var name = "jack";   //子頁面的值
parent.$("#sub").val(name);  //傳給父頁面id為sub的元素
           

layer.open彈出層擷取父頁面的值:

在彈出層關閉彈窗的方法(如:在彈出層點選某個按鈕之後想關閉該彈窗)

var index = parent.layer.getFrameIndex(window.name); //先得到目前iframe層的索引
parent.layer.close(index); //再執行關閉
           

skin:自定義皮膚

方式一:單個設定

隻想某個彈窗的某個樣式,如title的樣式,高度想要低一點

//第一步:
layer.open({
			 type: 2,  //類型  2表示iframe層  1:頁面層
			  
			  area: ['1050px','600px'],//彈出頁面的寬 高
			
			  skin: 'myskin', //自定義樣式名字:myskin,這個名字可以随意起
			 
			
			});
//第二步:在layer.open所在的頁面寫css, (.myskin是我們起的樣式名字,與上面屬性skin的名字相同)
<style type="text/css">
	 body .myskin .layui-layer-title{
		height: 34px;
	}  
</style>
           

注意事項:

自定義單個皮膚時,要注意自定義的css樣式寫在layer.open方法所在的頁面中,格式:‘body’+空格+自定義的class名+空格+'layui-layer-title’的css樣式,别忘記寫空格,還有自定義class名字要和屬性skin中名字保持一緻!!!