草庐IT

INPUT_OBJ_TYPE

全部标签

javascript - contentEditable + selectAll : Firefox won't allow keyboard input on dynamically generated content

我在使用包含contenteditable="true"属性的动态生成元素的Firefox中遇到问题(其他浏览器似乎工作正常):如果我selectAll(动态地或使用我的鼠标),Firefox将不允许键盘输入。请看我的jsFiddleExample以供引用。这似乎只影响Firefox。$(document).ready(function(){$('.edit').live('dblclick',function(){document.execCommand('selectAll',false,null);});$('#live').append('Thiscontentisgenera

javascript - CSS3 选择器 [*|type ="toc"]

我正在使用EPUB.JS,它使用以下代码从ePub文件中获取一些信息:varnavEl=navHtml.querySelector('nav[*|type="toc"]')这行代码在IE10中失败,因为querySelector返回null。我以前从未见过格式为[*|attr="val"]的属性选择器,但我认为他们想说的是,“选择所有具有任何属性或名为“type”且值为“toc”的属性的导航元素。”我找不到关于这种星形管道语法的任何信息,但我认为它是某种在Webkit/Mozilla中有效但在IE中无效的逻辑OR命令。将该行更改为:varnavEl=navHtml.querySelec

javascript - Angular 2 自定义验证器 : check if the input value is an integer?

在Angular2项目中,我需要验证一些输入。如何轻松检查输入值是否为整数?我尝试使用Number(control.value)为空字段返回0-不好。或parseInt(control.value,10)不考虑空格:如果我有类似的东西:1space0,24=1,024它返回1-它通过了验证器没有错误。Lodash函数如:_.isInteger(control.value)或_.isNumeric(control.value)//每次都返回false-这是预期的,因为输入值是字符串而不是数字。像这样组合方法会创建一个包含许多if/else语句的困惑函数,即便如此,我也不确定我是否得到了所

javascript - 除了执行 Object.prototype.hasOwnProperty.call(obj, key) 是否有 ES6+ 替代方案?

检查对象是否具有特定键的最可靠方法是:Object.prototype.hasOwnProperty.call(obj,key)这提供了一定的保证:如果key是obj的direct属性,它只会评估为true,即使obj没有通常的Object作为其原型(prototype)(例如,如果它是用constobj=Object.create创建的)(null)).但这是一口。在ES6或更高版本中是否有任何新的语法/方法(包括polyfillable或Babel可编译的“建议”)提供相同的保证,但以更好、更易读的方式? 最佳答案 我不知道这有

javascript - Polymer 在按键上获得 paper-input 、核心输入字段的值

我有paper-input元素我可以在释放按键时捕获事件。Polymer("app-input",{ready:function(){this.value=false;},keypressHandler:function(event,detail,sender){console.log("inputChanged");console.log(this.value);}});但只有当焦点从输入字段中移除时,this.value才会更改,因此我无法在按钮被释放时检索元素值。如何在keypressHandler()中获取元素值? 最佳答案

javascript - 如何解析 input[] 值并将它们放入 Javascript 数组中

假设我有这个:如何获取foo形式的数组输入值并将它们放入关联数组/对象中,如下所示:varresult={bar:{name:'blah',age:21}};附言我不想为此使用任何框架。 最佳答案 我需要自己做这个,在找到这个问题后,我不喜欢任何答案:我不喜欢正则表达式,其他人是有限的。您可以通过多种方式获取data变量。当我实现它时,我将使用jQuery的serializeArray方法。functionparseInputs(data){varret={};retloop:for(varinputindata){varval=d

javascript - 原型(prototype)继承。 obj->C->B->A,但 obj.constructor 是 A。为什么?

varprint=function(text){document.write(text);document.write("");}varA=function(){}A.prototype.name="A";varB=function(){}B.prototype=newA();B.prototype.name="B";varC=function(){}C.prototype=newB();C.prototype.name="C";obj=newC();print(obj.name);print(obj.constructor.prototype.name);print(obj.cons

javascript - "in"运算符或 obj.hasOwnProperty(prop) 的 Big O 表示法的效率是多少

Mozilla的网站清楚地描述了hasOwnProperty()。和in运营商。但是,它没有提供有关其效率的任何实现细节。我怀疑它们会是O(1)(常数时间),但我希望看到任何可能存在的引用或测试。 最佳答案 将我的评论变成答案。hasOwnProperty()应该O(1),因为它是一个键查找,但它是特定于实现的。in肯定会更复杂(尽管应该与hasOwnProperty()相同,如果属性存在于该对象上),因为它沿着原型(prototype)链上升,寻找那个属性(property)。这就是为什么通常建议在使用for(in)遍历对象属性时

javascript - 类型 [type] 的参数不可分配给类型 [type] 的参数

我在运行npxwebpack时遇到了这个错误Version:webpack3.12.0Time:57478msAssetSizeChunksChunkNamesapp.js172kB0[emitted]appvendor.js7.91MB1[emitted][big]vendorapp.js.map256kB0[emitted]appvendor.js.map9.28MB1[emitted]vendor[21]./angular/service.ts3.92kB{0}[built][23]./angular/Utility.ts2.21kB{0}[built][37](webpack)

javascript - 如果 "obj"未定义,则 angular.isDefined(obj) 不起作用

我习惯于输入有点乱的typeofobj!=="undefined"习惯用法。但是,我注意到了angular.isDefined(obj)方法。文档说如果未定义给定对象,它将返回false。然而,它实际上在做什么(至少在Firefox中)只是失败了,说“obj未定义”。我错过了什么吗? 最佳答案 tl;dr;:angular.isDefined(obj)不能完全替代typeof。AmImissingsomething?我不这么认为。typeof是一个特殊的运算符,如果obj根本不存在,它不会抛出错误。但是,将变量传递给函数将导致尝试读