Questions tagged «javascript»

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

18
如何在网页上添加自定义右键菜单?
我想向我的Web应用程序添加一个自定义的右键单击菜单。无需使用任何预构建的库就可以做到吗?如果是这样,如何显示不使用第三方JavaScript库的简单自定义右键单击菜单? 我的目标是像Google文档那样。它使用户可以右键单击并向用户显示他们自己的菜单。 注意: 我想学习如何制作自己的东西,而不是使用大多数人以来已经制作的东西,那些第三方库充斥着功能,而我只想要我需要的功能,因此我希望它完全是手工制作的我。

7
为什么parseInt用Array#map产生NaN?
来自Mozilla开发人员网络: [1,4,9].map(Math.sqrt) 将产生: [1,2,3] 为什么这样做: ['1','2','3'].map(parseInt) 产生这个: [1, NaN, NaN] 我已经在Firefox 3.0.1和Chrome 0.3中进行了测试,并且免责声明,我知道这不是跨浏览器功能(没有IE)。 我发现以下将达到预期的效果。但是,它仍然不能解释的错误行为parseInt。 ['1','2','3'].map(function(i){return +i;}) // returns [1,2,3]
290 javascript 


9
无法理解addEventListener中的useCapture参数
我已阅读https://developer.mozilla.org/en/DOM/element.addEventListener上的文章,但无法理解useCapture属性。定义有: 如果为true,则useCapture指示用户希望启动捕获。启动捕获后,所有指定类型的事件都将分派给注册的侦听器,然后才分派给DOM树中其下的任何EventTarget。在树中冒泡的事件不会触发指定使用捕获的侦听器。 在此代码中,parent事件在child之前触发,因此我无法理解其行为。Document对象的usecapture为true,child div的usecapture设置为false,并且遵循了useuseture的文档。因此为什么document属性优先于child。 function load() { document.addEventListener("click", function() { alert("parent event"); }, true); document.getElementById("div1").addEventListener("click", function() { alert("child event"); }, false); } <body onload="load()"> <div id="div1">click me</div> </body> 运行代码段隐藏结果展开摘要

4
如何在Express中获取URL参数?
我在tagid从URL:获取值方面遇到问题localhost:8888/p?tagid=1234。 帮助我更正我的控制器代码。我无法获得tagid价值。 我的代码如下: app.js: var express = require('express'), http = require('http'), path = require('path'); var app = express(); var controller = require('./controller')({ app: app }); // all environments app.configure(function() { app.set('port', process.env.PORT || 8888); app.use(express.json()); app.use(express.urlencoded()); app.use(express.methodOverride()); app.use(app.router); app.use(express.static(path.join(__dirname, 'public'))); app.set('view engine', 'jade'); app.set('views', __dirname + '/views'); app.use(app.router); app.get('/', function(req, …

7
如何使用JavaScript模拟点击?
我只是想知道如何使用JavaScript模拟元素的点击。 目前我有: <script type="text/javascript"> function simulateClick(control) { if (document.all) { control.click(); } else { var evObj = document.createEvent('MouseEvents'); evObj.initMouseEvent('click', true, true, window, 1, 12, 345, 7, 220, false, false, true, false, 0, null ); control.dispatchEvent(evObj); } } </script> <a href="http://www.google.com" id="mytest1">test 1</a><br> <script type="text/javascript"> simulateClick(document.getElementById('mytest1')); </script> 但这不起作用:( 有任何想法吗?
290 javascript 

13
使用Typescript进行接口类型检查
这个问题是使用TypeScript进行类类型检查的直接类比 我需要在运行时找出类型为any的变量是否实现了接口。这是我的代码: interface A{ member:string; } var a:any={member:"foobar"}; if(a instanceof A) alert(a.member); 如果在打字稿游乐场输入此代码,则最后一行将被标记为错误,“名称A在当前作用域中不存在”。但这不是事实,该名称确实存在于当前作用域中。我什至可以将变量声明更改为var a:A={member:"foobar"};无编辑者的抱怨。浏览完网络并在SO上找到另一个问题后,我将接口更改为一个类,但是后来我无法使用对象文字来创建实例。 我想知道类型A如何会消失,但是查看生成的javascript可以解释问题: var a = { member: "foobar" }; if(a instanceof A) { alert(a.member); } 没有将A表示为接口,因此无法进行运行时类型检查。 我知道javascript作为一种动态语言没有接口的概念。有什么方法可以对接口进行类型检查吗? 打字稿操场的自动补全表明,打字稿甚至提供了一种方法implements。如何使用?




11
JavaScript中的地图与对象
我刚刚发现了chromestatus.com,在失去了一天的时间后,发现了这个功能条目: 映射:映射对象是简单的键/值映射。 那让我感到困惑。常规JavaScript对象是字典,那么它Map与字典有何不同?从概念上讲,它们是相同的(根据 Map和Dictionary之间的区别是什么?) chromestatus文档参考无济于事: 映射对象是键/值对的集合,其中键和值都可以是任意ECMAScript语言值。一个唯一的键值只能出现在地图集合中的一个键/值对中。使用创建地图时选择的比较算法来区分的不同键值。 Map对象可以按插入顺序迭代其元素。必须使用哈希表或其他机制来实现Map对象,这些机制通常提供的访问时间与集合中元素的数量成线性关系。本Map对象规范中使用的数据结构仅用于描述Map对象所需的可观察语义。它并非旨在成为可行的实施模型。 …对我来说听起来仍然像是一个对象,所以很明显我错过了一些东西。 为什么JavaScript获得了一个(被良好支持的)Map对象?它有什么作用?

8
什么是$$ hashKey添加到我的JSON.stringify结果中
我尝试查看他们文档的Mozilla JSON字符串化页面以及SO和Google上的内容,但没有找到解释。我已经使用JSOn字符串化很多次了,但从未遇到过这个结果 我有一个JSON对象数组 [ { "param_2": "Description 1", "param_0": "Name 1", "param_1": "VERSION 1" }, { "param_2": "Description 2", "param_0": "Name 2", "param_1": "VERSION 2" }, { "param_2": "Description 3", "param_0": "Name 3", "param_1": "VERSION 3" } ] 附加到我的$scope并且为了将POST它们作为一个参数,我使用了JSON.stringify()方法,我得到了以下信息: [ { "param_2": "Description 1", "param_0": "Name 1", "param_1": "VERSION 1", …

15
jQuery SVG,为什么我不能添加类?
我正在使用jQuery SVG。我无法向对象添加或删除类。有人知道我的错误吗? SVG: <rect class="jimmy" id="p5" x="200" y="200" width="100" height="100" /> 不会添加该类的jQuery: $(".jimmy").click(function() { $(this).addClass("clicked"); }); 我知道SVG和jQuery可以正常工作,因为我可以定位对象并在单击对象时发出警报: $(".jimmy").click(function() { alert('Handler for .click() called.'); });


13
如何检查是否设置了存储项目?
如何检查是否设置了项目localStorage?目前我正在使用 if (!(localStorage.getItem("infiniteScrollEnabled") == true || localStorage.getItem("infiniteScrollEnabled") == false)) { // init variable/set default variable for item localStorage.setItem("infiniteScrollEnabled", true); }

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.