使用JQuery制作浮动窗口

<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=&nbsp;" />
<script src="./jquery.js"></script>
<style type="text/css">
body ,div,img{
   margin:0px;
   padding:0px;
}
#div2{
     background-color:#D8D8D8;
}
</style>
<script>
$(document).ready(function(){

  $("#windowMove").click(function(){
 startMove();
  });

});
/**************图片在指定的div中移动*****************/
var leftOffset=0;//左边的的坐标
var topOffset=0;//上坐标
var up=1;//向上移动
var left=1;//向左移动
var position=new Object();//位置坐标的对象
var xpeed=2;//移动的速度
var ypeed=3;//移动的速度
var interval=0;//
var delay=20;//延迟的秒数
function mover(){
    position=$("#div3").offset();//??在一个函数的范围内
    leftOffset=position.left;//获取当前坐标 y
    upOffset=position.top;//获取当前坐标 x
    if(up){//向下移动
       topOffset+=ypeed;
    }else{//向上移动
       topOffset-=ypeed;
    }
     $("#div3").offset({top:topOffset});
    if(left){ //向右移动
        leftOffset+=xpeed;
    }else{ //向左移动
        leftOffset-=xpeed;
    }
    $("#div3").offset({left:leftOffset});
    if(leftOffset>450){//设置左右移动开关量
       left=0;
       leftOffset=450;//450=500-50-div2.left
    }
    if(leftOffset<0){
       left=1;
       leftOffset=0;
    }
    if(topOffset>450){//设置上下移动开关量
       up=0;
       topOffset=450;//450=500-50-div2.top
    }
    if(topOffset<0){
       up=1;
       topOffset=0;
    }
}
function startMove(){
    
    interval=setInterval('mover()',delay);
}
</script>
</head>
<body>
<div id="div2"style="height:500px;width:500px;;">
    <div id="div3" style="height:50px;width:50px;position:absolute;">
        <a href="http://www.baidu.com">
           <img id ="#img2" src="./2.png"style="height:50px;width:50px;" οnmοuseοver="clearInterval(interval);" >小狸猫</img>
        </a>
    <div id="text"></div>
    </div>
</div>
<div>
<button id="windowMove" >加速/开始</button>
</div>
</body>

</html>

浮动窗的主要是确定位置,相对位置,必须把 div3  的positionz设置为relative 或者 absolute ;

同样 首先我们也必须掌握 css的3种定位:

relative ,相对定位::

        如果对一个元素进行相对定位,它将出现在它所在的位置上。然后,可以通过设置垂直或水平位置,让这个元素“相对于” 它的起点进行移动。注意,在使用相对定位时,无论是否进行移动,元素仍然占据原来的空间。因此,移动元素会导致它覆盖其它框。

absolute,绝对定位::   

       绝对定位的元素的位置相对于最近的已定位祖先元素,如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块

对于定位的主要问题是要记住每种定位的意义。所以,现在让我们复习一下学过的知识吧:相对定位是“相对于”元素在文档中的初始位置,而绝对定位是“相对于”最近的已定位祖先元素,如果不存在已定位的祖先元素,那么“相对于”最初的包含块。

注释:根据用户代理的不同,最初的包含块可能是画布或 HTML 元素。提示:因为绝对定位的框与文档流无关,所以它们可以覆盖页面上的其它元素。可以通过设置 z-index 属性来控制这些框的堆放次序。

fixed:固定定位 ::

         简单理解就是位置固定

关于css定位的知识大家可以查一查开发文档;


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的jQuery实现图片滚动栏的示例代码: HTML部分: ```html <div class="scroll-container"> <div class="scroll-wrapper"> <img src="image1.jpg" alt="image1"> <img src="image2.jpg" alt="image2"> <img src="image3.jpg" alt="image3"> <img src="image4.jpg" alt="image4"> <img src="image5.jpg" alt="image5"> </div> </div> ``` CSS部分: ```css .scroll-container { width: 500px; height: 200px; overflow: hidden; } .scroll-wrapper { width: 1000px; height: 200px; position: relative; left: 0; transition: left 0.5s ease-in-out; } .scroll-wrapper img { width: 200px; height: 200px; float: left; } ``` jQuery部分: ```javascript $(function() { var containerWidth = $('.scroll-container').width(); var wrapperWidth = $('.scroll-wrapper').width(); var currentPosition = 0; var scrollInterval; function startScroll() { scrollInterval = setInterval(function() { currentPosition -= 200; if (currentPosition < -(wrapperWidth - containerWidth)) { currentPosition = 0; } $('.scroll-wrapper').css('left', currentPosition); }, 2000); } function stopScroll() { clearInterval(scrollInterval); } $('.scroll-container').hover(stopScroll, startScroll); startScroll(); }); ``` 解释一下代码: 首先,在HTML中,我们创建了一个包含图片的div容器,其中包含一个具有所有图片的div容器。 接下来,在CSS中,我们设置了两个div容器的样式。scroll-container是一个固定高度和宽度的容器,其中包含了一个具有绝对定位的scroll-wrapper容器,该容器包含了所有的图片。 接着,在jQuery中,我们首先获取了scroll-container和scroll-wrapper的宽度,然后定义了一个当前位置的变量,该变量用于跟踪scroll-wrapper的位置。 然后我们定义了两个函数:startScroll函数和stopScroll函数。startScroll函数将在页面加载时自动调用,它通过使用setInterval函数来滚动图片。stopScroll函数用于在鼠标悬停在scroll-container上时停止滚动。 最后,我们使用jQuery的hover函数来触发stopScroll和startScroll函数,并在页面加载时调用startScroll函数来开始滚动图片。 希望这个示例能够帮助你了解如何使用jQuery制作图片滚动栏。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值