Tag: JavaScript

setTimeout与没有延迟立即执行相同的function?

我正在查看一些Web应用程序中的现有代码。 我看到这个: window.setTimeout(function () { … }) 这与刚刚执行function内容相同吗?

如何用<input type =“file”>select多个文件?

如何用<input type="file">select多个文件?

如何检查一个Javascript类是否inheritance另一个(不创build一个obj)?

例如: function A(){} function B(){} B.prototype = new A(); 如何检查B类是否inheritanceA类?

是否有可能捕获JavaScriptasynchronouscallback中引发的exception?

有没有办法在JavaScriptcallback中捕获exception? 这甚至有可能吗? Uncaught Error: Invalid value for property <address> 这里是jsfiddle: http : //jsfiddle.net/kjy112/yQhhy/ try { // this will cause an exception ing google.maps.Geocoder().geocode() // since it expects a string. var zipcode = 30045; var map = new google.maps.Map(document.getElementById('map_canvas'), { zoom: 5, center: new google.maps.LatLng(35.137879, -82.836914), mapTypeId: google.maps.MapTypeId.ROADMAP }); // exception in callback: var geo = […]

Javascript设置img src

我可能错过了一些简单的东西,但是当你阅读的所有东西都不起作用的时候,这很烦人。 我有在dynamic生成的页面的过程中可能被复制多次的图像。 所以显而易见的事情是预加载它,并始终使用这个variables作为源。 var searchPic; function LoadImages() { searchPic = new Image(100,100); searchPic.src = "XXXX/YYYY/search.png"; // This is correct and the path is correct } 然后我使用设置图像 document["pic1"].src = searchPic; 要么 $("#pic1").attr("src", searchPic); 但是,当我查询图像我得到的[object HTMLImageElement]作为图像的src时,图像从来没有在FireBug中正确设置 在IE中我得到: http://localhost:8080/work/Sandbox/jpmetrix/[object]

AJAX发布错误:拒绝设置不安全的标题“连接”

我有以下自定义ajax函数将数据发回到PHP文件。 每次数据发生后,我得到以下两个错误: 拒绝设置不安全的标题“内容长度” 拒绝设置不安全的标题“连接” 代码: function passposturl(url1, params, obj) { //url1 = url1+"&sid="+Math.random(); xmlHttp = get_xmlhttp_obj(); xmlHttp.loadflag = obj; xmlHttp.open("POST", url1, true); //alert(url1); //alert(params); //alert(obj); //alert(params.length); xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlHttp.setRequestHeader("Content-length", params.length); xmlHttp.setRequestHeader("Connection", "close"); xmlHttp.onreadystatechange = function () { stateChanged(xmlHttp); }; xmlHttp.send(params); } 我究竟做错了什么?

jqueryvalidationdynamic表单input无效的插件

我有一个表单,我有一些领域,然后如果需要用户可以添加更多的相同types的字段。 即时通讯使用http://jqueryvalidation.org/validation插件来validation字段。 当我读的地方jqueryvalidation插件需要唯一的名称字段validation它们。 所以我特别命名每个领域。 首先,我希望validation插件将负责dynamic添加元素的validation,如果我使用类添加规则。 但事实certificate,事实并非如此。 因此,即使每个字段的名称是唯一的,validation插件仅validation最初呈现的第一个input。 我甚至试图使用$ .clone() ,希望它会照顾所有的事件绑定。 但它没有为我工作。 所以我移动到下划线重复标记,因为有很多字段,我不想写在JS中的模板和相应的名称。 我无法find解决scheme,并卡在这里。 在解决此问题之前,不能再继续。 这是我写的JS。 $("#work_form").validate(); $(".work_emp_name").rules("add", { required: true }); _.templateSettings.variable = "element"; var tpl = _.template($("#form_tpl").html()); var counter = 1; $("form").on("click", ".add_employer", function (e) { e.preventDefault(); var tplData = { i: counter }; $("#word_exp_area").append(tpl(tplData)); counter += 1; }); 请在小提琴设置中find标记。 示例和代码在这里设置

根据以前的下拉选项显示第二个下拉菜单

首先,我讨厌提出一个已经处理的问题,但你应该知道我在这个网站上find的其他选项并不适合我。 基本上,我想要构造一个简短的表单,其中有两个下拉框。 第一个总是显示,第二个是默认隐藏的。 当第一个下拉框中的某个选项被选中时,我想要显示第二个下拉框。 这是我的意思的一个完美的例子: http://jsfiddle.net/whkQw/20/ 然而,与上面的例子不同,我有一个单独的选项集,显示在第一个下拉框中select的每个选项的下拉框中,而不仅仅是其中的一个选项。 换句话说,在上面的例子中,如果你select“中国”,第二个下拉框会出现,但如果你select了其他东西,它将保持隐藏状态。 这不是我想要的。 如果您select了“台湾”,我想要显示一个不同的下拉菜单,如果您为每个选项select了“德国”等,还要显示不同的下拉菜单。 我试图简单地在每个选项中重复该示例中的JavaScript,相应地更改名称标签,但这并不起作用(当谈到Javascript时,我是一个新手)。 所以我碰到这个例子,这正是我正在寻找的东西: http://jsfiddle.net/e9XvP/ 但由于某种原因,这段代码似乎不适合我。 它根本没有任何作用; 不pipeselect什么,第二个下拉列表都保持隐藏状态。 我的下拉列表比上面例子中的更多,更冗长。 这里是我现在的HTML: 下拉菜单1 <div class="ccms_form_element cfdiv_custom" id="style_container_div"> <label>Choose Rank: </label><select size="1" id="Rank" class=" validate['required']" title="" type="select" name="Rank"> <option value="">-Select Your Rank-</option> <option value="Airman">Airman</option> <option value="Airman First Class">Airman First Class</option> <option value="Senior Airman">Senior Airman</option> <option value="Staff Sergeant">Staff Sergeant</option> <option value="Senior […]

了解Selenium中的执行asynchronous脚本

我一直在使用selenium (通过python绑定和通过protractor )相当长的时间,每次我需要执行一个JavaScript代码,我已经使用execute_script()方法。 例如, 滚动页面 (python): driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") 或者,对于另一个元素 (量angular器) 内的无限滚动 : var div = element(by.css('div.table-scroll')); var lastRow = element(by.css('table#myid tr:last-of-type')); browser.executeScript("return arguments[0].offsetTop;", lastRow.getWebElement()).then(function (offset) { browser.executeScript('arguments[0].scrollTop = arguments[1];', div.getWebElement(), offset).then(function() { // assertions }); }); 或者,获取所有元素属性 (python)的字典 : driver.execute_script('var items = {}; for (index = 0; index < arguments[0].attributes.length; ++index) { items[arguments[0].attributes[index].name] = arguments[0].attributes[index].value […]

我在JavaScript中的单行实现rot13在哪里出错?

有问题的代码在这里语法突出显示: 通过Friendpaste rot13.js: <script> String.prototype.rot13 = rot13 = function(s) { return (s = (s) ? s : this).split('').map(function(_) { if (!_.match(/[A-Za-z]/)) return _; c = Math.floor(_.charCodeAt(0) / 97); k = (_.toLowerCase().charCodeAt(0) – 96) % 26 + 13; return String.fromCharCode(k + ((c == 0) ? 64 : 96)); }).join(''); }; </script> 正如你所看到的,使用一个简单的方法将一个方法附加到string对象的原型,我有一个我以前设置的map()方法(我确信这个代码是完美的,它只是简单的迭代数组中的每个元素并应用参数中指定的函数)遍历string中的每个字符,并执行我认为是正确的计算,以将string转换为它的rot13对应的string。 我很遗憾错误。 任何人都可以发现我出错的地方吗?