在jquery里踩过的坑

自己犯过的错

一、parent()和parents()

parent(selector)指的是直系父元素

parents(selctor)指的是沿DOM向上查找所有父元素

二、ie8中兼容jquery的input事件(jquery1.11.3版本)

需求是实时监听输入框值变化,用的input[event],做兼容性测试时发现在ie8下没有作用,好像是ie9以下没有input事件,解决方案:同时使用 input 和 两种事件。

$("input").on("input propertychange",function(){
   ...
})

三、写十秒倒计时

原来用的是setInterval,然后清除掉,觉得并不适合。这次用setTimenout写的,会在效率和写法上更合适。

//设定倒数秒数
var t = 10;
//倒计时
function time(){
    t -= 1;
    document.getElementById(‘times‘).innerHTML= t;
    if(t==0){
        location.href=‘https://www.cnblogs.com/‘;
    }
    setTimeout("time()",1000);
}
time();

四、兼容html5

写完之后测试不兼容ie8,特别是@media,心塞啊

 <!--[if lt IE 9]>
    <script src="https://cdn.bootcss.com/html5shiv/3.7.3/html5shiv.min.js"></script>
    <script src="https://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->

解决方案,来自bootstrap。加的时候发现这段代码需要加载样式之后。

五、使用jquery的e.stopPropagation()无效

div.div1.事件1
    div.div2.无事件
        div.div3.事件3

层级和事件关系如上。需求是点击div2的时候没有任何事件,点击div1和div3分别有事件。

直接写

$(".div3").on("click",function(){e.stopPropagation()});

e.stopPropagation()并没有生效。最后实践得出:

$(".div1").on("click",function(){...});
$(".div1").on("click",".div3",function(){e.stopPropagation()});

。。。还有问题TT

六、监控窗口的滚动(jquery1.11.3版本)

正常使用$(document).on("scroll",function(){})即可,但是测试发现在ie8下无效,改成$(window).on("scroll",function(){}),就好了,不是很理解。

时间: 2025-01-04 23:44:20

在jquery里踩过的坑的相关文章

jQuery版本升级踩坑大全

背景 -------------------------------------------------------------------------------- jQuery想必各个web工程师都再熟悉不过了,不过现如今很多网站还采用了很古老的jQuery版本.其实如果早期版本使用不当,可能会有DOMXSS漏洞,非常建议升级到jQuery 1.9.x或以上版本.前段时间我就主导了这件事情,把公司里我们组负责的项目jQuery版本从1.4.2升级到了jQuery 1.11.3.jQuery官

jQuery升级踩坑大全

背景 jQuery想必各个web工程师都再熟悉不过了,不过现如今很多网站还采用了很古老的jQuery版本.其实如果早期版本使用不当,可能会有DOMXSS漏洞,非常建议升级到jQuery 1.9.x或以上版本.前段时间我就主导了这件事情,把公司里我们组负责的项目jQuery版本从1.4.2升级到了jQuery 1.11.3.jQuery官方也为类似升级工作提供了jQuery Migrate插件. 言归正传. 坑从何处来 jQuery 1.11.3是1.x时代的最后一个版本(作者更新:2016年1月

【转载】Fragment 全解析(1):那些年踩过的坑

http://www.jianshu.com/p/d9143a92ad94 Fragment系列文章:1.Fragment全解析系列(一):那些年踩过的坑2.Fragment全解析系列(二):正确的使用姿势3.Fragment之我的解决方案:Fragmentation 本篇主要介绍一些最常见的Fragment的坑以及官方Fragment库的那些自身的BUG,这些BUG在你深度使用时会遇到,比如Fragment嵌套时或者单Activity+多Fragment架构时遇到的坑.如果想看较为实用的技巧,

初学spring boot踩过的坑

一.搭建spring boot环境 maven工程 pom文件内容 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-

Fragment全解析系列(一):那些年踩过的坑

Fragment系列文章:1.Fragment全解析系列(一):那些年踩过的坑2.Fragment全解析系列(二):正确的使用姿势3.Fragment之我的解决方案:Fragmentation 本篇主要介绍一些最常见的Fragment的坑以及官方Fragment库的那些自身的BUG,这些BUG在你深度使用时会遇到,比如Fragment嵌套时或者单Activity+多Fragment架构时遇到的坑.如果想看较为实用的技巧,请直接看第二篇 Fragment是可以让你的app纵享丝滑的设计,如果你的a

我用select做多路复用踩到的坑

既然说是用select踩到的坑,那么就先直接贴一段使用select的代码上来瞅一下: bool SocketAction(int fd, const char* buf, size_t len, uint64_t milli_expire) { struct timeval tv; tv.tv_sec = milli_expire / 1000; tv.tv_usec = (milli_expire % 1000) * 1000; fd_set rd_set, wt_set; FD_ZERO(&

使用ffmpeg视频编码过程中踩的一个坑

今天说说使用ffmpeg在写视频编码程序中踩的一个坑,这个坑让我花了好多时间,回头想想,很多时候一旦思维定势真的挺难突破的.下面是不正确的编码结果: 使用ffmpeg做视频编码过程中,首先要新建数据帧,并为数据帧分配相应内存,以便于保存图像数据,为数据帧分配内存需要用到av_image_alloc()这个函数,该函数将根据传入的图像宽.高.图像格式.数据对齐基数等参数进行内存分配. 这其中有一个参数可能会让人迷惑,那就是数据对齐基数这个参数该设置多少?顺便说说为什么要数据对齐,之所以要对齐,主要

那些年提交AppStore审核踩过的坑

此文刚刚上了CocoaChina的首页:那些年提交AppStore审核踩过的坑  欢迎围观,谢谢大家支持. //add by 云峰小罗,2016.08.04 做iOS开发近5年了,每次提交版本时不可谓不小心翼翼,如履薄冰,但是还是难免踩到了一些坑.苹果的官方文档(AppStore审核条款)这里就不罗列了,太冗长繁琐了,而且大部分是一般app都不会触碰的到的,今天我主要想以自己的亲身经历,跟大家回顾一下这些年我提交AppStore审核时踩过的坑,并且针对如何避免给出一些tips供大家参考.大神请忽

&quot;开发路上踩过的坑要一个个填起来————持续更新&#183;&#183;&#183;&#183;&#183;&#183;(7月30日)&quot;

欢迎转载,请注明出处! https://gii16.github.io/learnmore/2016/07/29/problem.html 踩过的坑及解决方案记录在此篇博文中! 个人理解,如有偏颇,欢迎指出! 欢迎交流! 3.scss和css的区别 在使用github pages的jekylltheme时,发现有一个scss文件,略感好奇.查了一下,scss文件是css预处理器所产生的中间文件,可通过编译产生css文件.简单说起来就是,程序员觉得CSS只能一行一行的手动添加实在是太麻烦.于是大家