页面中iframe 弹层 和拖动效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>我的jquery</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
 //拖拽窗口
 $(function(){
  var x,y;
  var i=0;
  $(".box .tit").mousedown(function(e){
   i=1;
   x = e.pageX-parseInt($(".box").css("left"));
   y = e.pageY-parseInt($(".box").css("top"));
   $(".box").fadeTo(200, 0.5);
  })
  $(document).mousemove(function(e){
   if(i == 1){
    x2 = e.pageX - x;
    y2 = e.pageY - y;
    if(x2 < 0){x2 = 0;}
    if(x2 > 800){x2 = 800;}
    if(y2 < 0){y2 = 0;}
    if(y2 > 700){y2 = 700;}
    $(".box").css({top:y2,left:x2});
   }
  }).mouseup(function(){
    i=0;
    $(".box").fadeTo(200, 1);
   })
 })
 //拖拽窗口end
 
 //iframe弹出层
 function tanchuceng(width,height,tit,url){
  var winWinth = $(window).width(),winHeight = $(document).height();
  $("body").append("<div class='winbj'></div>");
  $("body").append("<div class='tanChu'><div class='tanChutit'><span class='tanchuTxt'>"+tit+"</span><span class='tanchuClose'>关闭</span></div><iframe class='winIframe' frameborder='0' hspace='0' src="+ url +"></iframe></div>");
  $(".winbj").css({width:winWinth,height:winHeight,background:"#000",position:"absolute",left:"0",top:"0"});
  $(".winbj").fadeTo(0, 0.5);
  var tanchuLeft = $(window).width()/2 - width/2;
  var tanchuTop = $(window).height()/2 - height/2 + $(window).scrollTop();
  $(".tanChu").css({width:width,height:height,border:"3px #ccc solid",left:tanchuLeft,top:tanchuTop,background:"#fff",position:"absolute"});
  $(".tanChutit").css({width:width,height:"25px","border-bottom":"1px #ccc solid",background:"#eee","line-height":"25px"});
  $(".tanchuTxt").css({"text-indent":"5px","float":"left","font-size":"14px"});
  $(".tanchuClose").css({"width":"40px","float":"right","font-size":"12px","color":"#666","cursor":"pointer"});
  var winIframeHeight = height - 26;
  $(".winIframe").css({width:width,height:winIframeHeight,"border-bottom":"1px #ccc solid",background:"#ffffff"});
  $(".tanchuClose").hover(
   function(){
    $(this).css("color","#333");
   },function(){
    $(this).css("color","#666");
   }
  );
  $(".tanchuClose").click(function(){
   $(".winbj").remove();
   $(".tanChu").remove();
  });
 }
 //iframe弹出层end
 
 //模仿alert
 function mfalert(txt){
  var width = $(".mfalert").width() + 20;
  var mfalertLeft = $(window).width()/2 - width/2;
  var mfalertTop = $(window).height()/2 - 30/2 + $(window).scrollTop();
  $("body").append("<div class='mfAlert'>"+txt+"</div>");
  $(".mfAlert").css({width:width,height:"30px",border:"1px #333 solid",left:mfalertLeft,top:mfalertTop,background:"#ccc",position:"absolute","text-align":"center","line-height":"30px"});
  setTimeout("$('.mfAlert').remove()",3000);
 }
 //模仿alert end
</script>
<style>
*{padding:0;margin:0;font-size:12px;}
.layout{width:1000px;height:800px;border:1px #000 solid;border-width:0 1px;margin:0 auto;padding:1px; position:relative;}
.box{width:200px;height:100px;border:1px #ccc solid; position:absolute;left:100px;top:20px;}
.box .tit{height:20px;width:100%;background:#eee;border-bottom:1px #ccc solid; line-height:20px; text-indent:10px;}
.box .lis{line-height:20px; text-indent:5px;}
.tanchu{position:absolute; left:20px;top:20px;}
.mfalert{position:absolute; left:20px;top:50px;}
</style>
</head>

<body>
<div class="layout">
 <a href="#" class="tanchu" οnclick="tanchuceng(600,300,'我是中文','test.html')">弹出层</a>
 <div class="box">
     <div class="tit">点住我移动</div>
        <div class="lis">我是可移动的</div>
    </div>
    <a href="#" class="mfalert" οnclick="mfalert('3秒就没了')">点我输出</a>
</div>
</body>
</html>

转载于:https://www.cnblogs.com/zoupufa/p/4789302.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
iframe,子页面和父页面之间可以通过以下几种方法进行通信: 一、postMessage方法: 子页面可以使用postMessage方法向父页面发送消息,通过接收消息的事件监听器在父页面捕获消息并做出相应处理。子页面发送消息的代码示例如下: ```javascript window.parent.postMessage('Hello from child page!', '*'); ``` 在父页面,可以通过添加消息事件监听器来接收子页面发送的消息,并进行相应的处理: ```javascript window.addEventListener('message', function(event) { if (event.origin !== '子页面的URL') return; console.log('Message received from child page: ' + event.data); }); ``` 二、window.parent属性: 子页面可以通过window.parent属性直接访问父页面的方法和属性,从而与父页面进行通信。例如,子页面可以通过以下方式调用父页面的方法: ```javascript window.parent.parentMethod(); ``` 三、通过URL参数传递信息: 子页面可以通过URL参数将需要传递的信息附加在URL后面,并在父页面通过解析URL参数获取子页面传递的信息。子页面设置URL参数的代码示例如下: ```javascript var data = 'Hello from child page!'; var url = window.location.href + '?data=' + encodeURIComponent(data); window.location.href = url; ``` 在父页面,可以通过解析URL参数来获取子页面传递的信息: ```javascript var urlParams = new URLSearchParams(window.location.search); var data = decodeURIComponent(urlParams.get('data')); console.log('Data received from child page: ' + data); ``` 以上是在iframe页面和父页面通信的一些方法,根据具体的需求,可以选择合适的方法进行通信。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值