简要咨询咨询QQ网站导航网站搜索手机站点联系我们设为首页加入收藏 

基于jquery编写的放大镜插件

来源:易贤网   阅读:861 次  日期:2016-07-16 14:25:44

温馨提示:易贤网小编为您整理了“基于jquery编写的放大镜插件”,方便广大网友查阅!

本文实例为大家分享了自己动手实现的jquery放大镜插件,供大家参考,具体内容如下

/**

  ***********************************************

  **此插件使用须知---------------       **

  **滤镜(inner)与其活动区(active)之比要等于 **

  **放大区(movequ)与其内部图片之比。如比值不相 **

  **等,请改变图片大小.------------------------**

  **参数介绍                  **

  **active:滤镜活动区             **

  **inner:滤镜                 **

  **movequ:放大区域              **

  **需在Html头部引入本js脚本及jquery-1.8.3脚本 **

  **如有疑问,请联系QQ:64047399,为你解答   **

  ***********************************************

**/

$.fn.extend({

  yangbo:function(active,inner,movequ){

    $(active).hover(function(){

      $(inner).show();

      $(movequ).show();

      var proportionOne=$(active).width()/$(inner).width();

      var proportionTwo=$(movequ).find('img').width()/$(movequ).width();

      // console.log($(movequ).find('img').width());

      if(proportionOne==proportionTwo){

      $(this).mousemove(function(event){

        //以下为右侧放大

        var proportionLeft=$(active).width()/$(inner).width();

        var proportionTop=$(active).height()/$(inner).height();

        $(movequ).scrollLeft($(inner).position().left*proportionLeft).scrollTop($(inner).position()

        .top*proportionTop);

        //以下为小滤镜拖拽

        $(inner).offset({

            left:event.pageX-40,

            top:event.pageY-40

          });

        //以下为判断临界值

        if($(inner).position().left<=0){

            $(inner).css({

              left:0

            })

          }

          if($(inner).position().top<=0){

            $(inner).css({

              top:0

            })

          }

          if($(inner).position().left>=$(this).width()-$(inner).width()){

            $(inner).css({

              left:$(this).width()-$(inner).width()

            })

          }

          if($(inner).position().top>=$(this).height()-$(inner).height()){

            $(inner).css({

              top:$(this).height()-$(inner).height()

            })

          }

      })

    }else{

      $(active).text('图片宽高不正确:请调整图片宽高-->滤镜与其父亲之比应该等于右侧盒子与右侧图片之比')

      .css({

        background:'yellow',

        color:'red',

      });

    }

  },function(){

      $(inner).hide();

      $(movequ).hide();

    })

  }

})

以上就是本文的全部内容,希望对大家的学习有所帮助。

更多信息请查看网络编程
点此处就本文及相关问题在本站进行非正式的简要咨询(便捷快速)】     【点此处查询各地各类考试咨询QQ号码及交流群
上一篇:基于javascript实现句子翻牌网页版小游戏
下一篇:Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值
易贤网手机网站地址:基于jquery编写的放大镜插件
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!