Tag: JavaScript

用Javascript检测触摸屏设备

在Javascript / jQuery中,如何检测客户端设备是否有鼠标? 当用户将鼠标hover在某个项目上时,我有一个网站可以滑动一些信息面板。 我正在使用jQuery.hoverIntent检测hover,但这显然不适用于iPhone / iPad / Android等触摸屏设备。 所以在这些设备上,我想恢复点击以显示信息面板。

window.location.href = window.location.href和window.location.reload()之间的区别

JavaScript的区别是什么? window.location.href = window.location.href 和 window.location.reload() function?

为什么调用react setState方法不会立即改变状态?

我正在阅读reactjs文档的Forms部分,并试着用这个代码演示onChange用法( JSBIN )。 var React= require('react'); var ControlledForm= React.createClass({ getInitialState: function() { return { value: "initial value" }; }, handleChange: function(event) { console.log(this.state.value); this.setState({value: event.target.value}); console.log(this.state.value); }, render: function() { return ( <input type="text" value={this.state.value} onChange={this.handleChange}/> ); } }); React.render( <ControlledForm/>, document.getElementById('mount') ); 当我更新浏览器中的<input/>值时, handleChangecallback中的第二个console.log输出与第一个console.log相同的value ,为什么我看不到this.setState({value: event.target.value})的结果this.setState({value: event.target.value})在handleChangecallback的范围内?

你怎么能findHTMLcanvas上的文字的高度?

该规范有一个context.measureText(文本)函数,将告诉你需要多less宽度来打印该文本,但我找不到一个方法来找出它有多高。 我知道它是基于字体,但我不知道要将字体string转换为文本高度。

使用JavaScript进行多个左侧分配

var var1 = 1, var2 = 1, var3 = 1; 这相当于这个: var var1 = var2 = var3 = 1; 我相当肯定这是variables定义的顺序:var3,var2,var1,这将等同于: var var3 = 1, var2 = var3, var1 = var2; 有没有什么办法在JavaScript中确认这一点? 可能使用一些分析器?

我如何从一个网页导出表excel

我怎样才能从一个网页导出表excel。 我想导出包含所有的格式和颜色。

为我的Web应用程序制作自定义右键单击上下文菜单

我有几个网站,如谷歌文档和地图任务,当你右键单击自定义下拉菜单。 不知何故,他们覆盖了浏览器的下拉菜单的行为,现在我确定他们是如何做到的。 我发现了一个jQuery插件 ,但我仍然对以下几件事感到好奇: 这个怎么用? 浏览器的下拉菜单是否被覆盖,或者只是模拟的效果? 如果是这样,怎么样? 插件抽象掉了什么? 幕后发生了什么? 这是达到这个效果的唯一方法吗? 查看几个正在运行的自定义上下文菜单

如何创build一个jQuery函数(一个新的jQuery方法或插件)?

我知道在JavaScript中的语法如下: function myfunction(param){ //some code } 有没有办法在jQuery中声明一个可以添加到元素的函数? 例如: $('#my_div').myfunction()

在setInterval函数中传递参数

如何使用setInterval调用函数时传递参数。 即 setInterval('funca(10,3)',500); 是不正确的。

什么是在JavaScript中循环访问数组的最快方法?

我从书本上了解到,你应该这样写: for(var i=0, len=arr.length; i < len; i++){ // blah blah } 所以arr.length不会每次计算。 其他人则说编译器会对此做一些优化,所以你可以写: for(var i=0; i < arr.length; i++){ // blah blah } 我只想知道在实践中哪个是最好的方法?