zoukankan      html  css  js  c++  java
  • 常用的Jquery工具方法

    一、根据后端动态字段,如何把驻点输出在页面上?
    1、可以提前写好css,设置li的宽度,在页面中通过模板引擎语法动态加载不同的className。
    2、可以根据驻点个数和位置,用jquery去动态计算赋值。

    var paths = $('.detail-path');
    $.each(paths, function(){
      var points = $(this).children(),
      pointsLen = points.length;
      $.each(points, function(){
        var $this = $(this),
        middleNum = 100 / (pointsLen + 1),
        halfSelfWidth = $this.width() / 2,
        leftPercent = $this.attr('data-left') * middleNum;
        $this.css({'left': leftPercent + '%', 'margin-left': -halfSelfWidth + 'px'}).show();
      });
    });

    二、信息滚动

    1、单行信息滚动

    setInterval(this.marquee,3000);
    marquee: function(){
        var prizeul=$('#prizeul');//定义滚动区域
        var fli=prizeul.find('li:first');
        var flih=fli.height();//每次滚动高度
        fli.animate({
               marginTop:-flih+'px'
            },600,function(){//通过取负margin值,隐藏第一行
            fli.css('marginTop',0).appendTo(prizeul);//隐藏后,将该行的margin值置零,并插入到最后,实现无缝滚动
        })
    },

    2、鼠标移进停止滚动,移出继续滚动

    var vid = setInterval(marquee,3000); 
    $('.J-scroll').mouseenter(function(){ 
        clearInterval(vid); 
    }).mouseleave(function(){ 
        vid = setInterval(marquee,3000);
    });

     三、回到顶部

    //页面滚动时,是否显示回到顶部
    $(window).scroll(function(){
      if($(window).scrollTop() > 1500){
        $('.returntop').show();
      }else{
        $('.returntop').hide();
      }
    });
    
    //回到顶部的点击事件
    $('.returntop').click(function(){
      var timer = null;
      timer = setInterval(function(){ 
        var top = document.documentElement.scrollTop || document.body.scrollTop;
        var speed = Math.ceil(top/6);//高度小于6时可以一直递减到0
        document.documentElement.scrollTop = top - speed;//缓慢增加
        document.body.scrollTop = top - speed;
        if(!top){ 
          clearInterval(timer);
        }
      },50);
    });

    四、懒加载

    <script type="text/javascript" src="/js/lazyload/jquery.js"></script>
    <script>
    $(document).ready(function(){
      // 获取页面视口高度
      var viewportHeight = $(window).height();
      var lazyload = function() {
        // 获取窗口滚动条距离
        var scrollTop = $(window).scrollTop();
        $('img').each(function(){
          // 判断视口高度+滚动条距离与图片元素距离文档原点的高度         
          var x = scrollTop + viewportHeight - $(this).position().top;
          // 如果大于0即该元素能被浏览者看到,则将暂存于自定义属性loadpic的值赋值给真正的src    
          if (x > 0){
            $(this).attr('src',$(this).attr('loadpic')); 
          }
        });
      }
      // 创建定时器 “实时”计算每个元素的src是否应该被赋值
      setInterval(lazyload,100);
    });
    </script>

     五、获取文本框的焦点时,如何使光标停留在文字后面?

    var t = $("#J_input").val(); 
    $("#J_input").val("").focus().val(t); 

    先获取内容,将其置空,然后获取焦点,最后填充内容,即可实现光标出现在文字后面的功能。

    六、表单复选框,全选,取消子选项

    <input name='selectall' type='checkbox' id="J_select_all_btn"> 全选
    <input name='jsframe' type='checkbox'>es5
    <input name='jsframe' type='checkbox'>es6
    <input name='jsframe' type='checkbox'>reactjs
    <input name='jsframe' type='checkbox'>vuejs
    <input name='jsframe' type='checkbox'>angularjs
    <input name='jsframe' type='checkbox'>jquery
    //给全选按钮绑定事件
    $("#J_select_all_btn").click(function() {
      $('input[name="jsframe"]').attr("checked", this.checked);
    });
    var $jsframe = $("input[name='jsframe']");
    //给每个checkbox绑定事件
    $jsframe.click(function() {
      $("#J_select_all_btn").attr("checked", $jsframe.length == $("input[name='jsframe']:checked").length ? true: false);
    });
  • 相关阅读:
    linq join 左连接 leftjoin 多个on条件 where 条件
    mongodb 学习1
    Couchbase 如何设置密码;bucketPassword设置密码
    js获取网页的url文件名( 例如index.aspx),js获取url的参数(例如获取 ?cid=joeylee的值),给jquery拓展方法
    一个怪异的问题,时间序列化返回的问题
    jQuery 效果
    js对象的创建,拓展方法的创建
    js方法传入对象;js方法传入方法;js方法回调 callback
    js作为参数,并且返回值;js的回调模式 callback
    Connection to Oracle failed. [66000][12505] Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor .
  • 原文地址:https://www.cnblogs.com/camille666/p/jquery_mytool_function.html
Copyright © 2011-2022 走看看