Questions tagged «javascript»

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

5
直接与委派-jQuery .on()
我试图理解使用jQuery .on()方法的直接事件处理程序和委托事件处理程序之间的特殊区别。具体来说,本段的最后一句话: 当selector被提供时,事件处理程序被称为委托。当事件直接发生在绑定元素上时,不调用处理程序,而仅对与选择器匹配的后代(内部元素)进行调用。jQuery使事件从事件目标一直冒泡到附加了处理程序的元素(即,最内层元素到最外层元素),并沿该路径运行与选择器匹配的任何元素的处理程序。 “为任何元素运行处理程序”是什么意思?我做了一个测试页面来试验这个概念。但是以下两个构造导致相同的行为: $("div#target span.green").on("click", function() { alert($(this).attr("class") + " is clicked"); }); 要么, $("div#target").on("click", "span.green", function() { alert($(this).attr("class") + " is clicked"); }); 也许有人可以参考其他示例来阐明这一点?谢谢。

9
如何在JavaScript中舍入数字?
我想用Javascript舍入一个数字。由于数字是货币,因此我希望像以下示例一样将其舍入(小数点后两位): 192.168 => 192.20 192.11 => 192.20 192.21 => 192.30 192.26 => 192.30 192.20 => 192.20 如何使用Javascript实现呢?内置的Javascript函数将根据标准逻辑对数字进行四舍五入(四舍五入不超过5)。


10
在Rails 3应用程序中添加页面特定JavaScript的最佳方法?
Rails 3具有一些不引人注目的JavaScript,这非常酷。 但是我想知道最好的方法是为特定页面包含其他JavaScript。 例如,我以前可能做过的地方: <%= f.radio_button :rating, 'positive', :onclick => "$('some_div').show();" %> 我们现在可以通过类似 <%= f.radio_button :rating, 'positive' %> # then in some other file $('user_rating_positive').click(function() { $('some_div').show(); } 所以我想我的问题是在哪里/如何包含该JavaScript?我不想填写application.js文件,因为此JavaScript仅适用于该视图。我应该以某种方式为每个页面包含一个自定义JavaScript文件,还是将其粘贴到标题所要查找的实例变量中?

13
this.setState不像我期望的那样合并状态
我有以下状态: this.setState({ selected: { id: 1, name: 'Foobar' } }); 然后我更新状态: this.setState({ selected: { name: 'Barfoo' }}); 由于setState假设要合并,因此我希望它是: { selected: { id: 1, name: 'Barfoo' } }; 但是它吃了id,状态为: { selected: { name: 'Barfoo' } }; 这是预期的行为吗?仅更新嵌套状态对象的一个​​属性的解决方案是什么?

9
从客户端浏览器直接上传Amazon S3文件-私钥披露
我正在使用REST API通过REST API实现从客户端计算机到Amazon S3的直接文件上传,而没有任何服务器端代码。一切正常,但有一件事让我担心。 当我向Amazon S3 REST API发送请求时,我需要对请求进行签名并将签名放入Authentication标头中。要创建签名,我必须使用我的密钥。但是所有事情都是在客户端发生的,因此,可以很容易地从页面源中揭示密钥(即使我混淆/加密了源)。 我该如何处理?这是一个问题吗?也许我只能将特定私钥的使用限制为仅来自特定CORS Origin的REST API调用,以及仅PUT和POST方法,或者仅将密钥链接到S3和特定存储桶?可能还有另一种身份验证方法? “无服务器”解决方案是理想的选择,但是我可以考虑进行一些服务器端处理,而不是将文件上传到服务器,然后再发送到S3。

8
如何使用Javascript弹出打印对话框?
我有一个带有“打印”链接的页面,该链接将用户带到易于打印的页面。客户端希望在用户到达易于打印的页面时自动显示打印对话框。如何使用javascript执行此操作?
159 javascript 

12
扁平化/非扁平化嵌套JSON对象的最快方法
我将一些代码放在一起,以拼合和取消拼合复杂/嵌套的JSON对象。它可以工作,但是有点慢(触发“长脚本”警告)。 对于扁平化的名称,我想要“。” 作为数组的定界符和[INDEX]。 例子: un-flattened | flattened --------------------------- {foo:{bar:false}} => {"foo.bar":false} {a:[{b:["c","d"]}]} => {"a[0].b[0]":"c","a[0].b[1]":"d"} [1,[2,[3,4],5],6] => {"[0]":1,"[1].[0]":2,"[1].[1].[0]":3,"[1].[1].[1]":4,"[1].[2]":5,"[2]":6} 我创建了一个基准来模拟我的用例http://jsfiddle.net/WSzec/ 获取一个嵌套的JSON对象 展平 浏览并可能在展平时对其进行修改 将其展开为原始的嵌套格式以将其运走 我想要更快的代码:为澄清起见,在IE 9 +,FF 24+和Chrome 29中,完成JSFiddle基准测试(http://jsfiddle.net/WSzec/)的代码明显更快(〜20 %+会更好)。 +。 以下是相关的JavaScript代码:当前最快:http : //jsfiddle.net/WSzec/6/ JSON.unflatten = function(data) { "use strict"; if (Object(data) !== data || Array.isArray(data)) return data; var result = {}, …

8
计算jQuery中选择标签中的选项标签的数量
如何使用jQuery计算DOM元素中的<option>s 数量<select>? <select data-attr="dropdown" id="input1"> <option value="Male" id="Male">Male</option> <option value="Female" id="Female">Female</option> </select> 我想<option>在<select>DOM元素中找到标记的数量,因为要打开带有相应数量的输入字段的设置面板,并从下拉框中选择相应的选项值,然后在预览中再次进行更改面板。 上面的下拉框在我的预览面板中,该面板由jQuery生成。
159 javascript  jquery  html 

17
表格顶部和底部的水平滚动条
table我的页面很大。因此,我决定在表格底部放置一个水平滚动条。但我希望此滚动条也位于表的顶部。 我在模板中的内容是这样的: <div style="overflow:auto; width:100%; height:130%"> <table id="data" style="width:100%">...</table> </div> 仅在HTML和CSS中可以这样做吗?
159 javascript  jquery  html  css 

14
使用Node.js HTTP Server获取并设置单个Cookie
我希望能够设置单个cookie,并在对nodejs服务器实例的每个请求中读取单个cookie。是否可以用几行代码来完成,而无需引入第三方库? var http = require('http'); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('Hello World\n'); }).listen(8124); console.log('Server running at http://127.0.0.1:8124/'); 只是尝试直接从nodejs.org中获取上述代码,然后在其中工作一个cookie。

27
如何使用JavaScript / jQuery滚动到页面顶部?
有没有一种方法可以使用JavaScript / jQuery控制浏览器滚动? 当我向下滚动页面一半,然后触发重新加载时,我希望页面进入顶部,但它会尝试找到最后一个滚动位置。所以我这样做: $('document').ready(function() { $(window).scrollTop(0); }); 但是没有运气。 编辑: 因此,当页面加载后,我打电话给您时,您的两个答案都有效。但是,如果我只是刷新页面,看起来就像浏览器在.ready事件发生后计算并滚动到其旧滚动位置(我也测试了body onload()函数)。 因此,接下来的工作是,有没有办法防止浏览器滚动到其过去的位置,或者在它执行其操作后重新滚动到顶部?

20
如何检查脚本是否在Node.js下运行?
我有一个Node.js脚本所需的脚本,我想保持JavaScript引擎独立。 例如,我只想exports.x = y;在Node.js下运行。如何执行此测试? 发布此问题时,我不知道Node.js模块功能是否基于CommonJS。 对于我给出的具体示例,一个更准确的问题是: 脚本如何判断是否已将其作为CommonJS模块使用?

6
jQuery AJAX文件上传PHP
我想在我的Intranet页面上实现一个简单的文件上传,并使用最小的设置。 这是我的HTML部分: <input id="sortpicture" type="file" name="sortpic" /> <button id="upload">Upload</button> 这是我的JS jQuery脚本: $("#upload").on("click", function() { var file_data = $("#sortpicture").prop("files")[0]; var form_data = new FormData(); form_data.append("file", file_data); alert(form_data); $.ajax({ url: "/uploads", dataType: 'script', cache: false, contentType: false, processData: false, data: form_data, type: 'post', success: function(){ alert("works"); } }); }); 网站的根目录中有一个名为“ uploads”的文件夹,具有“用户”和“ IIS_users”的更改权限。 …
159 javascript  php  jquery  ajax  upload 

7
您如何清除javascript中的焦点?
我知道这应该没那么难,但是我在Google上找不到答案。 我想执行一段JavaScript,将焦点从任何元素上清除,而无需提前知道焦点在哪个元素上。它必须在firefox 2以及更现代的浏览器上工作。 有什么好方法吗?
159 javascript  focus 

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.