Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。



6
为什么JSX道具不应该使用箭头功能或绑定?
我正在用我的React应用程序运行lint,并且收到此错误: error JSX props should not use arrow functions react/jsx-no-bind 这是我运行箭头功能(在里面onClick)的地方: {this.state.photos.map(tile => ( <span key={tile.img}> <Checkbox defaultChecked={tile.checked} onCheck={() => this.selectPicture(tile)} style={{position: 'absolute', zIndex: 99, padding: 5, backgroundColor: 'rgba(255, 255, 255, 0.72)'}} /> <GridTile title={tile.title} subtitle={<span>by <b>{tile.author}</b></span>} actionIcon={<IconButton onClick={() => this.handleDelete(tile)}><Delete color="white"/></IconButton>} > <img onClick={() => this.handleOpen(tile.img)} src={tile.img} style={{cursor: 'pointer'}}/> …

8
是否有使用javascript生成html的最佳实践
我正在调用一个Web服务,该服务返回JSON中的对象数组。我想获取这些对象并使用HTML填充div。假设每个对象都包含一个url和一个名称。 如果我想为每个对象生成以下HTML: <div><img src="the url" />the name</div> 是否有最佳做法?我可以看到几种方法: 连接字符串 创建元素 使用模板插件 在服务器上生成html,然后通过JSON进行投放。
103 javascript  html  ajax  dynamic  dhtml 

6
为什么document.querySelectorAll返回StaticNodeList而不是真正的Array?
令我感到困扰的是,document.querySelectorAll(...).map(...)即使在Firefox 3.6 中我也无法做到这一点,而且仍然找不到答案,所以我认为我应该交叉张贴此博客中的问题: http://blowery.org/2008/08/29/yay-for-queryselectorall-boo-for-staticnodelist/ 有人知道您没有获得阵列的技术原因吗?或者为什么StaticNodeList不会以这样的方式数组继承,你可以使用map,concat等等? (顺便说一句,如果它只是您想要的一个功能,您可以执行类似NodeList.prototype.map = Array.prototype.map;...的操作,但是再次,为什么首先有意阻止此功能?)

13
如何使用CSS隐藏<select>菜单中的<option>?
我已经意识到Chrome似乎不允许我隐藏&lt;option&gt;在中&lt;select&gt;。Firefox将会。 我需要隐藏&lt;option&gt;与搜索条件匹配的。在Chrome网络工具中,我可以看到display: none;我的JavaScript 正确设置了它们,但是一旦&lt;select&gt;单击菜单,它们就会显示出来。 &lt;option&gt;单击菜单时,如何显示不符合搜索条件的这些?谢谢!
103 javascript  jquery  css  dom 

13
如何重载javascript中的函数?
经典(非js)重载方法: function myFunc(){ //code } function myFunc(overloaded){ //other code } Javascript不允许使用同一个名称定义多个功能。这样,这样的事情就会出现: function myFunc(options){ if(options["overloaded"]){ //code } } 除了传递带有重载的对象之外,JavaScript中是否有更好的解决方法来实现函数重载? 传递重载会很快导致函数变得太冗长,因为每个可能的重载都需要一个条件语句。使用函数来完成//code这些条件语句的内部可能会导致带有范围的棘手情况。
103 javascript 

7
检测图像何时无法在Javascript中加载
有没有一种方法可以确定图像路径是否指向实际图像,即检测图像何时无法在Javascript中加载。 对于Web应用程序,我正在解析xml文件,并根据图像路径列表动态创建HTML图像。服务器上可能不再存在某些图像路径,因此我想通过检测哪些图像无法加载并删除该HTML img元素来正常地失败。 注意JQuery解决方案将无法使用(老板不想使用JQuery,是的,我知道我不入门)。我知道在JQuery中一种检测何时加载图像的方法,但不知道它是否失败。 我创建img元素的代码,但是如何检测img路径是否导致无法加载图像? var imgObj = new Image(); // document.createElement("img"); imgObj.src = src;
103 javascript  image 

8
如何向复制的网络文本添加额外信息
现在,某些网站使用Tynt的JavaScript服务,该服务将文本追加到复制的内容中。 如果使用此方法从站点复制文本,然后粘贴,则在文本底部将获得指向原始内容的链接。 Tynt也会在发生这种情况时对其进行跟踪。做得好,这是一个巧妙的技巧。 他们执行此操作的脚本令人印象深刻-而不是尝试操纵剪贴板(只有IE的较早版本才允许他们执行默认操作,并且应该始终将其关闭),而是操纵实际的选择。 因此,当您选择文本块时,多余的内容将作为隐藏内容添加&lt;div&gt;到您的选择中。粘贴时,多余的样式将被忽略,并显示多余的链接。 实际上,使用简单的文本块很容易做到这一点,但是当您考虑到在不同浏览器中跨复杂HTML进行所有选择时,这将是一场噩梦。 我正在开发一个Web应用程序-我不希望任何人都能跟踪复制的内容,我希望这些额外的信息包含上下文相关的内容,而不仅仅是链接。在这种情况下,Tynt的服务并不适合。 有谁知道开源的JavaScript库(可能是jQuery插件或类似的库)提供相似的功能,但不公开内部应用程序数据?

2
具有CORS Origin标头和CSRF令牌的CSRF保护
此问题仅与防止跨站点请求伪造攻击有关。 具体来说,它是:通过Origin标头(CORS)进行的保护是否与通过CSRF令牌进行的保护一样好? 例: 爱丽丝使用她的浏览器(使用cookie)登录到“ https://example.com ”。我认为她使用的是现代浏览器。 爱丽丝访问“ https://evil.com ”,evil.com的客户端代码对“ https://example.com ” 执行某种请求(经典CSRF场景)。 所以: 如果我们不检查Origin头(服务器端),也没有CSRF令牌,则我们有一个CSRF安全漏洞。 如果我们检查CSRF令牌,我们是安全的(但这有点乏味)。 如果我们确实检查了Origin标头,则应与使用CSRF令牌时一样阻止evil.com客户端代码的请求-除了,除非evil.com的代码可以某种方式设置Origin标头。 我知道,如果使用XHR(例如,跨域资源共享的安全性),这应该是不可能的,至少不能,如果我们相信W3C规范可以在所有现代浏览器中正确实现的话(可以吗?) 但是其他类型的请求呢?例如表单提交?加载脚本/ img / ...标签?还是页面可以用来(合法)创建请求的任何其他方式?还是一些已知的JS hack? 注意:我不是在说 本机应用程序 操纵的浏览器 example.com页面上的跨站点脚本错误, ...

4
如何强制在React组件上重新安装?
可以说我有一个具有条件渲染的视图组件: render(){ if (this.state.employed) { return ( &lt;div&gt; &lt;MyInput ref="job-title" name="job-title" /&gt; &lt;/div&gt; ); } else { return ( &lt;div&gt; &lt;MyInput ref="unemployment-reason" name="unemployment-reason" /&gt; &lt;MyInput ref="unemployment-duration" name="unemployment-duration" /&gt; &lt;/div&gt; ); } } MyInput看起来像这样: class MyInput extends React.Component { ... render(){ return ( &lt;div&gt; &lt;input name={this.props.name} ref="input" type="text" value={this.props.value || null} …

7
setTimeout / clearTimeout问题
我尝试使页面转到例如eg之后的首页。10秒钟不活动(用户未单击任何位置)。我使用jQuery进行其余操作,但测试功能中的set / clear是纯javascript。 令我沮丧的是,我最终得到了类似该功能的东西,希望我可以在该页面上进行任何单击。计时器可以正常启动,但单击后不会重置。如果在前10秒内调用该函数5次,则将出现5条警报...无clearTimeout ... function endAndStartTimer() { window.clearTimeout(timer); var timer; //var millisecBeforeRedirect = 10000; timer = window.setTimeout(function(){alert('Hello!');},10000); } 有人得到一些可以解决问题的代码行吗?-在任何点击停止时,重置并启动计时器。-当计时器命中时 10sec做点什么。

4
Webpack加载程序与插件;有什么不同?
webpack中的加载器和插件有什么区别? 在对插件的文件只是说: 使用插件添加通常与webpack中的捆绑包相关的功能。 我知道babel使用加载程序进行jsx / es2015转换,但是看起来其他常见任务(例如,copy-webpack-plugin)使用插件代替。

5
具有require的Node.js ES6类
到目前为止,我已经node.js通过以下方式创建了类和模块: var fs = require('fs'); var animalModule = (function () { /** * Constructor initialize object * @constructor */ var Animal = function (name) { this.name = name; }; Animal.prototype.print = function () { console.log('Name is :'+ this.name); }; return { Animal: Animal } }()); module.exports = animalModule; 现在使用ES6,您可以像下面这样创建“实际”类: class …

10
jQuery-防止默认,然后继续默认
我有一个表格,提交后,我需要做一些额外的处理才能提交表格。我可以防止默认的表单提交行为,然后进行其他处理(基本上是在调用Google Maps API并向表单中添加一些隐藏字段)-然后我需要提交表单。 有没有一种方法可以“防止默认设置”,然后再有一些“继续默认设置”呢?
103 javascript  jquery 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.