小羊也疯狂 2017-03-27 06:26 采纳率: 100%
浏览 803
已采纳

关于导航栏变宽的j s代码问题

鼠标悬浮导航栏变宽图片说明图片说明
第一个无法正常运行 ,第二个将this换成This就能运行了
1 为什么会出现这种情况
2。This.style.width = This.offsetWidth + 8 + "px";
换成This.offsetWidth = This.offsetWidth + 8 ;为什么无法运行(.tyle.width和offsetWidth区别)

  • 写回答

3条回答 默认 最新

  • Go 旅城通票 2017-03-27 07:26
    关注

    setInterval执行的函数this指向window,已经脱离onmouseover事件,所以不是dom对象,你用That存储this相当于做了个闭包

    offsetXXXX是位置,只读的,无法设置。style不用说了吧,专门就是修改元素样式用的

    https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetLeft

     The HTMLElement.offsetLeft read-only property returns the number of pixels that the upper left corner of the current element is offset to the left within the HTMLElement.offsetParent node.
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型