js问题记录

1:如果给type=file文件添加change事件,如果点击同一张图片,则只会触发一次onchange事件,因为change事件是根据value值定的,value不变无法触发此事件。

live: function( types, data, fn ) {
   jQuery( this.context ).on( types, this.selector, data, fn );
   return this;
}// jq 1.9以后live取消,从源码可以看出可以用on代替
$(document).ready(function(){
    // 点击同一张文件只能触发一次
    $("#file").change(function(){ alert("change"); });
    $("#file").live("change", function () { alert("1"); });// live在jq 1.9以后就不用了,所以不能用live事件 live为一种特殊的delegate,代理宿主为body,效率不好
    $("#file").on("change", function () { alert("1"); }); // 无效
     $(‘body‘).delegate("#file","change",function(){alert("1");}); // 无效

    // 可以在每次点击的时候都触发change事件,但是有个问题,每次file都会被清空一次,相当于没有点击
    $("body").delegate("#file","change",function(){
        $("#file").replaceWith("<input type=‘file‘ id=‘file‘ />");
    });
});
时间: 2025-01-09 01:10:20

js问题记录的相关文章

typeahead.js 使用记录

github地址:https://github.com/twitter/typeahead.js 在aceAdmin界面模板中,有typeahead这一控件,版本号为0.10.2 , 这个版本对 minLength:0这个参数无效,所以我就到github中找到新版本0.11.1 替换,在此记录使用过程中的一些注意事项 基本代码 var gameNameList = ['abc', 'abd', 'cde', 'xyz']; var gameNameMatcher = function(strs)

小白学习node.js的记录

本人对于node.js一无所知,纯纯的小白一枚,想学习的初衷是了解node.js是什么,能用它干点什么,说白就是好奇心使然吧.接下来记录自己的学习过程. 注:若有错误欢迎指出,互相学习.segmentfault        stackoverflow 谁适合阅读本教程? 如果你是一个前端程序员,你不懂得像PHP.Python或Ruby等动态编程语言,然后你想创建自己的服务,那么Node.js是一个非常好的选择. Node.js 是运行在服务端的 JavaScript,如果你熟悉Javascri

vue.js 学习记录(二)

原文连接:http://www.cnblogs.com/keepfool/p/5625583.html 组件 #注册组件 Vue.component('my-component', { // 选项 }) 组件在注册之后,便可以在父实例的模块中以自定义元素 <my-component></my-component> 的形式使用.要确保在初始化根实例 之前 注册了组件: <!DOCTYPE html> <html> <body> <div id

vue.js 学习记录(一)

原文地址:http://www.cnblogs.com/rik28/p/6024425.html 1.这段代码在画面上输出"Hello World!". <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <!--这是我们的View--> <

php 二维数组传递给 js 问题解决记录

需求: php从数据库中读取到二维数组.传递到js中 实现步骤: php:json_encode  →   json  →  js:eval 即在php中使用json_encode()将php的二维数组转化成json格式.传递到js中,使用eval()解析得到js的二维数组. 代码: php: <?php header("Content-Type: text/html; charset=utf8") ; $con=mysqli_connect("url",&q

node.js使用经验记录

MongoDB使用经验: 有时不知道MongoDB的错误码代表什么,那有这个链接: https://github.com/mongodb/mongo/blob/master/src/mongo/base/error_codes.err 关于MongoDB连接字符串,有两个经验: 对于node.js驱动,如果要保证一个用户的数据写入到数据库是按调用的顺序来的,请在连接字符串里设置poolSize=1或maxPoolSize=1. w=majority会导致性能很差,用w=1吧. Node.js本身

angular js使用记录

jquery本身并不是框架,而仅仅是一个操作dom的工具,它的核心是操作dom; 目前较火的前端框架:backbone.angularjs.react.avalon.vue; angularjs是由google开发的框架并进行维护,特别针对SPA(单页面)应用开发的框架,但不支持按需加载; MV*; mvvm框架 达到视图与逻辑(模块)同时绑定,同时更新: 1.ng-app——指令,使文档具有angularjs的能力(视图与逻辑混合); angular的核心就是视图与逻辑的同时绑定.同时更新;

js学习记录

比较运算符 当我们对Number做比较时,可以通过比较运算符得到一个布尔值: 2 > 5; // false 5 >= 2; // true 7 == 7; // true 实际上,JavaScript允许对任意数据类型做比较: false == 0; // true false === 0; // false 要特别注意相等运算符==.JavaScript在设计时,有两种比较运算符: 第一种是==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果: 第二种是===比较,它不会自

JS学习记录(补充四)

History对象<html lang="en"> <head> <meta charset="UTF-8"> <title>History对象</title> </head> <body> <a href="Demo40.html">Demo40</a> <button onclick="forward()"&g

JS学习记录(jQuery补充一)

伪类选择器<html lang="en"> <head> <meta charset="UTF-8"> <title>伪类选择器</title> </head> <body> <h1>欢迎来到北京大学</h1> <ul> <li>烟台大学</li> <li>鲁东大学</li> <li>山东