小编pim*_*vdb的帖子

jQuery - 按下角色 - 无论键盘如何

我试图用jQuery检索插入到textfield/input中的字符.

我使用通常的:

var character = String.fromCharCode( e.keyCode || e.which );
Run Code Online (Sandbox Code Playgroud)

方法,但唯一的问题是当我使用不同的键盘布局,我刚注意到.

例如,在标准美国键盘上,它可以很好地工作.对于instanece的德语键盘,如果我将语言设置为英语 - 基本上将其设置为标准美国键盘,当我按下相当于的字符时:;'\,./[]=-,我会得到我实际在键盘上看到的德语字符(尽管英语相当于被添加到输入中).

例如:如果console.log( character )我得到以下句子:

  • 在输入中: []\';/.,
  • 在控制台中: ÛݺÞܼ¾¿

我显而易见的问题是,我怎样才能确保获得真正的字符插入器?

javascript jquery character-encoding

13
推荐指数
2
解决办法
1万
查看次数

如何使用多个画布上下文?

我想用experimental-webgl,和2d画布上下文也一样.在我绘制了3d对象之后,我想在它上面绘制一些2d对象.

我该怎么办?

javascript webgl html5-canvas

13
推荐指数
2
解决办法
9608
查看次数

由于mime类型不匹配,IE9脚本响应被阻止

我使用以下代码片段将谷歌融合表中的数据加载为json.

var fileref = document.createElement("script");
fileref.setAttribute("type", "text/javascript");
fileref.setAttribute("src", "http://tables.googlelabs.com/api/query?sql=select * from 588320&hdrs=false&jsonCallback=LoadTable");
Run Code Online (Sandbox Code Playgroud)

在IE8,FF,Chrome中运行良好,但现在IE9不知道如何处理回调,因为响应和mime类型不匹配.使用jsonCallback param时IE9报告以下脚本错误,因为它不喜欢mime类型.

SEC7112:来自http://tables.googlelabs.com/api/query?sql=select*的脚本来自588320&hdrs = false&jsonCallback =由于mime类型不匹配而导致LoadTable被阻止.

有一种解决方法,我不得不在本地托管src(或者我做错了什么)?

Response Headers

Content-Type text/plain; charset=UTF-8 
Content-Encoding gzip 
Transfer-Encoding chunked 
Date Fri, 13 May 2011 02:19:11 GMT 
Expires Fri, 13 May 2011 02:19:11 GMT 
Cache-Control private, max-age=0 
X-Content-Type-Options nosniff 
X-Frame-Options SAMEORIGIN 
X-XSS-Protection 1; mode=block 
Server GSE 


Request Headers

Host tables.googlelabs.com 
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1 
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language en-us,en;q=0.5 
Accept-Encoding gzip, deflate 
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Keep-Alive 115 …
Run Code Online (Sandbox Code Playgroud)

mime types response internet-explorer-9

12
推荐指数
1
解决办法
2万
查看次数

"原生"关键字在JavaScript中意味着什么?

我偶然发现了v8LocaleChrome开发者控制台中调用的功能.我很好奇所以我输入了获取源代码的函数,它显示了以下代码:

function (a){
native function NativeJSLocale();
var b=NativeJSLocale(a);
this.locale=b.locale;
this.language=b.language;
this.script=b.script;
this.region=b.region;
}
Run Code Online (Sandbox Code Playgroud)

我开始在互联网上搜索,发现这个文件似乎是源代码(看起来它虽然已经缩小了).

我不知道native这里的关键字是什么意思.当我尝试自己制作这样的东西时:

function bar() {}

function foo() {
    native function bar();
}
Run Code Online (Sandbox Code Playgroud)

我得到以下错误消息(实际上我的预期):

SyntaxError: Unexpected token native
Run Code Online (Sandbox Code Playgroud)

v8Locale函数如何包含native令牌,它是什么意思/做什么?

javascript native function token keyword

12
推荐指数
1
解决办法
4253
查看次数

如何在js中拆分字符串,但有一些例外

我有这个字符串:

a\,bcde,fgh,ijk\,lmno,pqrst\,uv
Run Code Online (Sandbox Code Playgroud)

我需要一个JavaScript函数,将每一个分割字符串,,但只有那些具有\在他们面前

如何才能做到这一点?

javascript regex string split

12
推荐指数
1
解决办法
3172
查看次数

为什么创建一个Float32Array,其偏移量不是不允许的元素大小的倍数?

我想读取一个二进制文件,在字节偏移31处有几个32位浮点值.

不幸的是,new Float32Array(buffer, 31, 6);不起作用.偏移量为32而不是31,但我需要31.

根据此页面,偏移量必须是元素大小的倍数,在这种情况下为4.

我对这种行为背后的原因感兴趣.为什么视图开始的位置很重要?

到目前为止我找到最好的解决方法还没有成为壁虎,所以我不能使用它.

我是否真的必须将字节值剪切并复制到新数组中以获取浮点值?

javascript typed-arrays

12
推荐指数
2
解决办法
4240
查看次数

如何检测通过画布生成的图像是否为空白(透明PNG)?

我正在开发一个应用程序,在该应用程序中,在HTML5画布上创建/编辑图像,然后将其保存到文件存储/云中.问题在于"节约效率".保存空白画布时,即发送完全透明的空白PNG toDataURL().检测空白PNG的一种方法是在点击任何编辑/绘图功能时切换布尔值,并在清除屏幕上重置该值.

然而,这样的方法并非万无一失,因为用户可以在点击绘制/编辑功能之后保存图像但是不绘制任何东西.是否有更原生的方法来检测画布是否返回自浏览器打开后已更改的二进制字符串?或者其他一些方法来确保在客户端检测到空白的透明PNG?

javascript html5-canvas

12
推荐指数
2
解决办法
4428
查看次数

jQuery选择器模拟:starts-with或:ends-with用于搜索文本?

如果你查看jQuery网站上的选择器列表,可以选择有关属性的开始 - 结束和结束.还有一个:contains用于搜索文本的选择器:

alert( $("div").find("span:contains(text)").html() );
Run Code Online (Sandbox Code Playgroud)

jQuery是否有使用starts-with或ends-with搜索字符串的实现?

仅供参考:我需要搜索XML对象.

javascript xml jquery contains jquery-selectors

12
推荐指数
2
解决办法
7352
查看次数

在do-while循环中使用continue

MDN声明:

当您使用continue无标签,它会终止最内层的当前迭代while,do-whilefor语句,并继续与下一个迭代循环的执行.

我不确定为什么下面的代码不能像我期望的那样工作.

do {
  continue;
} while(false);
Run Code Online (Sandbox Code Playgroud)

即使while条件是false,我希望它会永远运行,因为continue跳转到块的开始,它会立即continue再次执行,等等.然而,不管怎样,循环在一次迭代后终止.看起来好像continue被忽略了.

如何continue在一个do-while循环的工作?

javascript iteration loops continue do-while

12
推荐指数
4
解决办法
7384
查看次数

强制下载'data:text/plain'URL

我想知道是否可以强制浏览器(至少Chrome)下载data:text/plainURL.

Chrome会下载二进制URL(例如data:application/zip;base64,...),但不会下载可在浏览器中查看的文件(例如文本文件).

到目前为止,我已经尝试过没有运气的是:

data:text/plain;content-disposition=attachment;filename=test.txt;...
Run Code Online (Sandbox Code Playgroud)

但似乎我无法添加这样的标题.

有没有办法让Chrome下载data:text/plain,...网址?

text file download content-disposition data-url

11
推荐指数
3
解决办法
2万
查看次数