为了账号安全,请及时绑定邮箱和手机立即绑定
  • 太快!!太快! 讲解不详细
    查看全部
  • 定时器应用: 1、获取按钮、绑定事件、初始化定时器、设置定时器变量和定时变量; 2、添加定时器,并编写函数操作。
    查看全部
    3 采集 收起 来源:编程练习

    2015-03-31

  • 分享给同学 卓美 @@--Tab选项卡切换效果-- 第2章 延迟切换效果 2-1 js实现延迟切换 ①延迟定时器-- 先清除定时器: //如果存在准备执行的定时器,立刻清除,只有当前停留的时间大于500ms时才开始执行 if(timer){ clearTimeout(timer); timer = null; } 再设定延迟的定时器: //延迟半秒执行 timer = window.setTimeout(function(){ for(var j=0;j<lis.length;j++){ lis[j].className = ''; divs[j].style.display = 'none'; } lis[that.id].className = 'select'; divs[that.id].style.display = 'block'; },500); } 【重点--!!】容易出错的地方~ ②关于setTimeOut()方法内的this,指向的是window对象 setTimeout是window的只是不需要写出来,方法隶属于谁,this就指向谁,解决方法是用变量存储当前this //用that这个变量来引用当前li var that = this;
    查看全部
  • 一、页面加载、获取整个容器、所有放数字索引的li及放图片列表的ul、定义放定时器的变量、存放当前索引的变量index 二、添加定时器,每隔2秒钟index递增一次、调用一次切换图片函数 提示: 1. index不能一直无限制的递增下去,需做判断 2.调用切换图片函数时需将递增之后的index作为参数传过去 三、定义图片切换函数 提示: 1.遍历所有放数字索引的li,将每个li上的类去掉。 2.根据传递过来的index值找到对应的li给它添加类设为当前高亮显示。 3. 根据传递过来的index值计算放图片的ul的top值 4. 改变index的值,让其等于传递过来的参数值 注意:放图片的ul的top值=-index*单张图片的高度(所有图片必须等高) 四、鼠标划过整个容器时,图片停止切换,离开继续 提示: 1. 鼠标滑过整个容器时清除定时器 2. 鼠标离开时继续执行定时器,切换至下一张图片 五、遍历所有放数字的li,且给他们添加索引、鼠标滑过时切换至对应的图片 提示: 1. 鼠标滑过时调用图片切换函数,将滑过的li的索引传过去
    查看全部
  • input 不支持enabled属性。所以一般用disabled。 js用法:object.disabled=true(禁用),object.disabled=false(可用)。 HTML用法:disabled="disabled" jq用法:object.attr("disabled",true) 设置按钮是否为禁用时,send.disabled=true; send.disabled=false; true和false不能加引号!true和false不能加引号!true和false不能加引号!否则值永远为真。 也可用send.setAttribute('disabled','disabled'); 或send.removeAttribute('disabled');
    查看全部
    2 采集 收起 来源:编程练习

    2018-03-22

  • 我发现老师的if(timer){clearInterval(timer);timer=null;}是放在window.onload事件中的..其实只在浏览器加载完成后执行了一次...而在最后她把console.log(curIndex)语句给删掉后做测试,当然工作台不会打印curIndex的值了.老师你太糊弄事啦!!! 自己做了测试,发现多次打印curIndex的原因有两个:1.当鼠标滑动到li中的a标签上后,a的onmouseover和onmouseout事件会进行冒泡而触发了li的onmouseover和onmouseout事件,而使工作台打印了curIndex的值;2.当鼠标从li滑动入li自己内部的a标签时,触发了li的onmouseout,同理鼠标移出a时,触发了li的onmouseover. 最后要说明一下,打印curIndex的值的最直接原因是调用了changeOption()函数{老师吧console.log(curIndex);放在了这个函数内}.当lis[i].onmouseover触发时,首先就已经清理了定时器{clearInterval(timer);}直到lis[i].onmouseout事件触发,在此之间调用函数changeOption()和定时器有毛关系啊!!!所以此时并没有定时器在后台运行,不会出现老师所说的定时器开得太多而影响浏览器工作的情况. 老师在程序中所加的if(timer){clearInterval(timer);timer=null;}也只是针对定时器timer的判断与关闭.setInterval也不可能存在自我调用(即:timer=setInterval(aaa,1500);而函数aaa中又存在timer=setInterval(aaa,1500);这样函数会无限循环的自我调用而使浏览器崩溃. 不过可以timer111=setInterval(aaa,1500);函数aaa中又存在timer222=setInterval(bbb,1500);timer111与timer222为不同的定时器,aaa与bbb为不同的函数,这样不会出现死循环的自我调用),所以老师的if(timer){clearInterval(timer);timer=null;}只能关闭之前可能已经被用了的timer定时器.
    查看全部
  • 此处有坑,自定义属性兼容写法设置是titles[i].setAttribute('tid',i); 获取是getAttribute('tid'),直接操作属性很可能浏览器不兼容,属性加不上的同学可以试试这种写法
    查看全部
  • //定义一个获取id的函数 function $(id){ return typeof id==='string'?document.getElementById(id):id; } window.onload=function(){ //获取鼠标滑过或点击的标签和要切换内容的元素 var titles=$('notice-tit').getElementsByTagName('li'), divs=$('notice-con').getElementsByTagName('div'); if(titles.length!=divs.length) return; //遍历titles下所有的li for(var i=0;i<titles.length;i++){ titles[i].id = i; titles[i].onmouseover = function(){ //清除所有li上的class 和 display:none for(var j=0;j<titles.length;j++){ titles[j].className = ''; divs[j].style.display = 'none'; } //设置当前为高亮显示 this.className = 'select'; divs[this.id].style.display = 'block'; } } }
    查看全部
  • 在添加定时器之前,做一次清除。 PS:清除代码添加的位置貌似不对,添加到这个位置,执行一次就拉倒了。。。是不是应该添加到 onmouseout那个代码里?
    查看全部
  • 老师的Css讲解的有点喧宾夺主了!!!
    查看全部
  • 这个老师教的很好。发音又标准!
    查看全部
  • setInterval() 的使用方法 setTimeOut() 是在什么时间以后干什么,干完就结束。 setInterval() 是间歇调用,是间隔一定时间反复执行某操作。
    查看全部
  • 1-33
    查看全部
  • setTimeout()和setInterval()的区别: setTimeout()方法是超时调用,只执行一次; setInterval()方法是一直在调用,可执行多次 window.onload = function(){ //标签的索引 var index = 0; var timer = null; var lis = $('notice-tit').getElementsByTagName('li'); divs = $('notice-con').getElementsByTagName('div'); if(lis.length!=divs.length) return; //遍历所有的页签 for(var i=0;i<lis.length;i++){ lis[i].id = i; lis[i].onmouseover = function(){ //用that这个变量来引用当前li var that = this; //如果存在准备执行的定时器,立刻清除,只有当前停留的时间大于500ms时才开始执行 if(timer){ clearTimeout(timer); timer = null; } //延迟半秒执行 timer = window.setTimeout(function(){ for(var j=0;j<lis.length;j++){ lis[j].className = ''; divs[j].style.display = 'none'; } lis[that.id].className = 'select'; divs[that.id].style.display = 'block'; },500); } } }
    查看全部
  • index++; index %= 5;
    查看全部
首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
1、您应该已经熟悉html标签和css样式表;2、您还应该已经熟悉JavaScript 或 jQuery的基础知识。
老师告诉你能学到什么?
您可以举一反三,制作非常精美风格多样的 Tab 切换效果,能够帮助你丰富或改进网站中的选项卡功能的用户体验。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!