一般来说都是二的写法,我在项目中就是这样。结果我在网上的视频看见的一的写法.是成功的,想着还有没有别的方法
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>申请单的下载与使用</title>
<!-- layui的核心CSS文件 -->
<link rel="stylesheet" type="text/css" href="layui-v2.6.8/layui/css/layui.css"/>
<!-- layui的核心JS文件 -->
<script src="layui-v2.6.8/layui/layui.js" type="text/javascript" charset="utf-8"></script>
<script src="js/jquery-3.6.0.js" type="text/javascript" charset="utf-8"></script>
//_我把<div>写在<head><body>中间 <body>中间写<script>(layui.open的代码)是可以运行的_
</head>
<div class="myDiv" id="myDiv">
我是mydiv的内容
</div>
<body>
<script type="text/javascript">
layui.use(['layer','jquery'], function(){
var $ = layui.jquery;
var layer = layui.layer;
//layer.msg('hello');
});
layer.open({
type:1,
area: ['500px,500px'],
title:"系统消息",
// content:"出差",
// content:"<div>褚楚</div>"
//content:'<div>处处滴哦</div>'
content:$("#myDiv")
,btn:['确定','取消']
})
</script>
<div id="sqd">
申请单下载.doc
</div>
</body>
</html>
而如果这样
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>申请单的下载与使用</title>
<!-- layui的核心CSS文件 -->
<link rel="stylesheet" type="text/css" href="layui-v2.6.8/layui/css/layui.css"/>
<!-- layui的核心JS文件 -->
<script src="layui-v2.6.8/layui/layui.js" type="text/javascript" charset="utf-8"></script>
<script src="js/jquery-3.6.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
layui.use(['layer','jquery'], function(){
var $ = layui.jquery;
var layer = layui.layer;
//layer.msg('hello');
});
layer.open({
type:1,
area: ['500px,500px'],
title:"系统消息",
// content:"出差",
// content:"<div>褚楚</div>"
//content:'<div>处处滴哦</div>'
content:$("#myDiv")
,btn:['确定','取消']
})
</script>
</head>
<body>
<div class="myDiv" id="myDiv">
我是mydiv的内容
</div>
<div id="sqd">
申请单下载.doc
</div>
</body>
</html>
我想要第二种的写法 有第一种的效果,因为目前我在做的这个项目需要这样做?有没有办法能实现的
你可以用type =2 的,把内容页做到新的页面,
layer.open({
type: 2,
// maxmin: true,
content: [url, 'yes'], //yes表示显示滚动条
title: '详细',
area: ['70%', '60%'],
end: function () {
//location.reload();
},
//closeBtn: 1,
offset: '20px',
shift: 4,
skin: 'layui-layer-rim',
btn: ['确定', '关闭'],
success: function(layero, index) {},
// 确定的操作$("input[name$='news']")
btn1: function(index, layero) {
var iframeWin = window[layero.find('iframe')[0]['name']];//得到iframe页的窗口对象,执行iframe页的方法:
//自己的处理
console.log( tasktime );
layer.close(index);//需要手动关闭窗口
},
cancel: function(index, layero) {
// 取消的操作
}
});
html代码执行是由上到下的,你把script
放到上面,此时dom未渲染完成,所有未拿到#myDiv
,使用了jQuery
,你可以把代码放到$(function() { })
中,里面的代码会在dom渲染后执行
$(function () {
layer.open({
type: 1,
area: ['500px,500px'],
title: "系统消息",
// content:"出差",
// content:"<div>褚楚</div>"
//content:'<div>处处滴哦</div>'
content: $("#myDiv")
, btn: ['确定', '取消']
})
})
不过一般会把script放到下面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="..." />
<title>demo</title>
</head>
<body>
<script src="..."></script>
<script>
...
</sciprt>
</body>
</html>