热门IT资讯网

JS 知识点收集

发表于:2024-11-25 作者:热门IT资讯网编辑
编辑最后更新 2024年11月25日,setIntervalsetInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用
  1. setInterval

    setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。
    setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。setInterval() 的返回值返回
    一个可以传递给 Window.clearInterval()的参数, 从而取消对 code 的周期性执行的值。







  2. jQuery动画效果animate和scrollTop结合使用实例

    animate是jq的一个特效的函数方法,animate() 方法执行 CSS 属性集的自定义动画。该方法通过CSS样式将元素从一个状态改变为另一个状态。
    CSS属性值是逐渐改变的,这样就可以创建动画效果。
    只有数字值可创建动画(比如 "margin:30px")。
    字符串值无法创建动画(比如 "background-color:red")。
    $('#shang').click(function(){$('html,body').animate({scrollTop: '0px'}, 800);});
    上面的代码表示滚动条跳到0的位置,页面移动速度是800。
    结合scrollTop实用示例:
    jQuery(document).ready(function($){
    $('#shang').click(function(){
    $('html,body').animate({scrollTop: '0px'}, 800);
    });
    $('#comt').click(function(){
    $('html,body').animate({scrollTop:$('#comments').offset().top}, 800);
    });
    $('#xia').click(function(){
    $('html,body').animate({scrollTop:$('#footer').offset().top}, 800);
    });
    });
    表示点击相关ID移动到指定位置:
    点击ID为shang的元素,回到顶部;
    点击ID为comt的元素,回到ID为comments的位置;
    点击ID为xia的元素,回到底部;

    $('.chat-content').animate({
    scrollTop: $('.chat-content')[0].scrollHeight}, 500
    );//这个实现 chat-content里的内容不断增加,滚动条下滚

  3. 获取时间

    var d = new Date();
    var send_time = d.getHours() + ":"+ d.getMinutes() + ":"+ d.getSeconds();

  4. JSON

    str = JSON.parse(jsonstr) 解析 json格式字符串

    JSON.stringify(str)  生成json格式字符串

  5. parseInt parseFloat

  6. bind、delegate、on

    bind是将事件绑定到某个或某种元素上,它不能绑定到尚未存在的元素上;

    delegate 采用了事件委托的概念。不是直接为某个元素绑定事件,而是为其父元素(或祖先元素也可)绑定事件,如:

$("div").delegate("p", "click", function () {
alert($(this).text());
});
当在此例中的div元素父内任意元素上点击时,事件会一层层从event target向上冒泡,直至到达你 为其绑定事件的元素P,冒泡的过程中,如果事件的currentTarget与选择器匹配时,就会执行代码。

这样就解决了用bind()方法的上面两个问题,不用再一个个地去为p元素绑定事件,也可以为动态添加进来的p元素绑定。甚至,如果你将事件绑定到document上,都不用等document准备好就可执行绑定。但是,如果层数太多,会影响到性能

on 是 JQUERY 1.7 后官方建议的方式,

$("div").on("click","p",function(){
alert($(this).text());
})

对应于bind()、delegate()和on()绑定方法,其移除事件的方法分别为:
$( "div p" ).unbind( "click", handler );
$( "div" ).undelegate( "p", "click", handler );
$( "div" ).off( "click", "p", handler );

选择器匹配到的元素比较多时,不要用bind()迭代绑定
用id选择器时,可以用bind()
需要给动态添加的元素绑定时,用delegate()或者on()
用delegate()和on()方法,dom树不要太深
尽量使用on()

用delegate来监测某个键是否按下以执行特殊方法监测body 下texarea有没有敲回车 键

$("body").delegate("textarea", "keydown",function(e){

if(e.which == 13) {//Enter key down

aler( $("textarea").val());

} });//end body

7. 去掉focus的边框

a:focus {
outline:none;
}

8.javascript 没有trim功能,jquery有

str=' abc '

$.trim(str) // str='abc'

0