`
boyliwlove
  • 浏览: 7409 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

[原创+源码]jQuery实现弹出居、右下角、左下角窗口效果 二

阅读更多

[原创+源码]jQuery实现弹出居、右下角、左下角窗口效果(二)
     接上文,[原创+源码]jQuery实现弹出居、右下角、左下角窗口效果(一) 我们先来看看怎么实现弹出居中窗口,弹出居中窗口主要是要获取几个参数,分别为浏览器的高度、宽度
     当前窗口的高度、宽度,滚动条滚动的高度和宽度等,然后再定位这个层。
     代码如下:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <link href="window.css" type="text/css" rel="stylesheet" />
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <script language="javascript" type="text/javascript" src="../include/jquery-1.5.1.min.js"></script>

  7. <script type="text/javascript">
  8. $(function(){

  9. //监听按钮事件
  10. $("#btn1").click(function(){
  11. //执行窗口移动效果
  12. MoveWindow();

  13. });
  14. //添加关闭图片的单击事件
  15. $(".title img").click(function(){
  16. //隐藏窗口
  17. $(this).parent().parent().hide('slow');

  18. });



  19. });
  20. function MoveWindow(){

  21. //获取浏览器的宽度
  22. var bwidth=$(window).width();
  23. //获取浏览器的高度
  24. var bheight=$(window).height();
  25. //获取当前窗口宽度
  26. var winwidth=$("#center").width();
  27. //获取当前窗口高度
  28. var winheight=$("#center").height();

  29. //获取滚动条的高度
  30. var sTop=$(window).scrollTop();
  31. //获取滚动条的宽度
  32. var sLeft=$(window).scrollLeft();

  33. //计算窗口距左的距离
  34. var left=sLeft+(bwidth-winwidth)/2;
  35. //计算窗口距上的距离
  36. var top=sTop+(bheight-winheight)/2;
  37. //设置层的位置
  38. $("#center").css("left",left).css("top",top).show("slow");

  39. }
  40. </script>

  41. <title>无标题文档</title>
  42. </head>

  43. <body>

  44. <br><br><br><br><br><br><br><br><br><br>
  45. <br><br><br><br><br><br><br><br><br><br>
  46. <br><br><br><br><br><br><br><br><br><br>
  47. <br><br><br><br><br><br><br><br><br><br>
  48. <br><br><br><br><br><br><br><br><br><br>
  49. <input type="button" id="btn1" value="打开居中窗口" />
  50. <div class="window" id="center">

  51. <div class="title">
  52. <img src="../images/close.jpg" />这里标题文字
  53. </div>
  54. <div class="content">
  55. CSDN中文it社区<br>
  56. CSDN学生大本营 李伟<br>
  57. 3G开发者联盟<br>
  58. 3gput.com
  59. </div>

  60. </div>

  61. </body>
  62. </html>
复制代码

       弹出左下角窗口和弹出居中窗口类似,也是计算下坐标

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <link href="window.css" type="text/css" rel="stylesheet" />
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <script language="javascript" type="text/javascript" src="../include/jquery-1.5.1.min.js"></script>

  7. <script type="text/javascript">
  8. $(function(){

  9. //监听按钮事件
  10. $("#btn1").click(function(){

  11. //获取浏览器的宽度
  12. var bwidth=$(window).width();
  13. //获取浏览器的高度
  14. var bheight=$(window).height();
  15. //获取当前窗口宽度
  16. var winwidth=$("#center").outerWidth(true);
  17. //获取当前窗口高度
  18. var winheight=$("#center").outerHeight(true);

  19. //获取滚动条的高度
  20. var sTop=$(window).scrollTop();
  21. //获取滚动条的宽度
  22. var sLeft=$(window).scrollLeft();

  23. //计算窗口距左的距离
  24. var left=0;
  25. //计算窗口距上的距离
  26. var top=sTop+bheight-winheight;
  27. //设置层的位置
  28. $("#center").css("left",left).css("top",top).show("slow");

  29. });
  30. //添加关闭图片的单击事件
  31. $(".title img").click(function(){
  32. //隐藏窗口
  33. $(this).parent().parent().hide('slow');

  34. });


  35. });

  36. </script>

  37. <title>无标题文档</title>
  38. </head>

  39. <body>

  40. <br><br><br><br><br><br><br><br><br><br>
  41. <br><br><br><br><br><br><br><br><br><br>
  42. <br><br><br><br><br><br><br><br><br><br>
  43. <br><br><br><br><br><br><br><br><br><br>
  44. <br><br><br><br><br><br><br><br><br><br>
  45. <input type="button" id="btn1" value="打开左下角窗口" />
  46. <div class="window" id="center">

  47. <div class="title">
  48. <img src="../images/close.jpg" />这里标题文字
  49. </div>
  50. <div class="content">
  51. CSDN中文it社区<br>
  52. CSDN学生大本营 李伟<br>
  53. 3G开发者联盟<br>
  54. 3gput.com
  55. </div>

  56. </div>

  57. </body>
  58. </html>
复制代码

      弹出右下角窗口:弹出右下角窗口我做了很多处理,比如滚动条事件的监听,当滚动条位置移动的时候则移动窗口的位置,同时设置了动画效果,使得窗口的移动显得更加的平滑,代码如下:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <link href="window.css" type="text/css" rel="stylesheet" />
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <script language="javascript" type="text/javascript" src="../include/jquery-1.5.1.min.js"></script>

  7. <script type="text/javascript">
  8. $(function(){

  9. //监听按钮事件
  10. $("#btn1").click(function(){

  11. MoveWindow();

  12. });
  13. //添加关闭图片的单击事件
  14. $(".title img").click(function(){
  15. //隐藏窗口
  16. $(this).parent().parent().hide('slow');

  17. });

  18. //监听滚动条的滚动事件
  19. $(window).scroll(function(){

  20. MoveWindow();

  21. });


  22. });
  23. var timeoutid;
  24. function MoveWindow(){
  25. clearTimeout(timeoutid);
  26. timeoutid=setTimeout(function(){
  27. //获取浏览器的宽度
  28. var bwidth=$(window).width();
  29. //获取浏览器的高度
  30. var bheight=$(window).height();
  31. //获取当前窗口宽度
  32. var winwidth=$("#center").outerWidth(true);
  33. //获取当前窗口高度
  34. var winheight=$("#center").outerHeight(true);

  35. //获取滚动条的高度
  36. var sTop=$(window).scrollTop();
  37. //获取滚动条的宽度
  38. var sLeft=$(window).scrollLeft();

  39. //计算窗口距左的距离
  40. var left1=sLeft+bwidth-winwidth;
  41. //计算窗口距上的距离
  42. var top1=sTop+bheight-winheight;
  43. //设置层的位置,添加动画效果
  44. $("#center").animate({left:left1,top:top1},300).show("slow");


  45. },300);
  46. }

  47. </script>

  48. <title>无标题文档</title>
  49. </head>

  50. <body>

  51. <br><br><br><br><br><br><br><br><br><br>
  52. <br><br><br><br><br><br><br><br><br><br>
  53. <br><br><br><br><br><br><br><br><br><br>
  54. <br><br><br><br><br><br><br><br><br><br>
  55. <br><br><br><br><br><br><br><br><br><br>
  56. <input type="button" id="btn1" value="打开右下角窗口" />
  57. <div class="window" id="center">

  58. <div class="title">
  59. <img src="../images/close.jpg" />CSDN欢迎您
  60. </div>
  61. <div class="content">
  62. 这里是正文部分 hell CSDN
  63. </div>

  64. </div>

  65. </body>
  66. </html>
复制代码

   以上效果在搜狗、IE、火狐测试下均没有问题,粗略之处还请大家多多沟通交流。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics