Tag: JavaScript

修复网站加载时间?

目前我的网站需要花费几千年才能加载,即使它几乎没有任何东西。 我的假设是,这是因为页面上有很多图片和JavaScript。 有没有一种方法来testing是什么导致了长时间加载?

为什么在这个简单的addEventListener函数之后使用“false”?

什么是最后的错误? 谢谢。 window.addEventListener('load', function() { alert("All done"); }, false);

WebRTC远程video显示为黑色

在开发WebRTCvideo聊天应用程序时,我遇到了接收远程videostream的问题。 videostreamblob被接收,但video只是黑色。 我已经通过这些答案,并尝试几乎所有我能得到它的工作https://stackoverflow.com/a/17424224/923109 远程VideoStream不与WebRTC的工作 …… Globalvars.socket.on('call', function (signal) { if(!Globalvars.pc){ Methods.startCall(false, signal); } if(signal.sdp){ temp = new RTCSessionDescription({"sdp" : decodeURIComponent(signal.sdp), "type" : signal.type}); Globalvars.pc.setRemoteDescription(temp); for(i = 0; i < Globalvars.iceCandidateArray.length; i++){ Globalvars.pc.addIceCandidate(new RTCIceCandidate({ sdpMLineIndex: decodeURIComponent(signal.sdpMLineIndex), candidate: decodeURIComponent(signal.candidate) })); } Globalvars.iceCandidateArray = []; } else{ if(Globalvars.pc.remoteDescription){ Globalvars.pc.addIceCandidate(new RTCIceCandidate({ sdpMLineIndex: decodeURIComponent(signal.sdpMLineIndex), candidate: decodeURIComponent(signal.candidate) })); console.log("remot"); } else{ […]

你可以在使用d3.js时在文本中插入换行符吗?

我正在寻找一种使用d3.js在工具提示文本元素中使用换行符的方法。 .text("test" + "</br>" + "test") 以上和其他类似的努力似乎并不奏效。 这里有一个线程似乎回答: https://groups.google.com/forum/?fromgroups=#!topic/d3-js/GgFTf24ltjc 但解决scheme不是很清楚。 如何在上述情况下使用.html? .text(.html(“test”+“”+“test”)) 没有工作? 谢谢

使用Javascript防止移动Safari / iPhone中的触摸事件的鼠标仿真事件(即点击)

在使用交互式DOM元素的单页JavaScript应用程序中,我发现在“ touchstart-touchmove-touchend ”事件序列之后 ,“ mouseover-mousemove-mousedown-mouseup-click ” 我也发现可以通过在touchstart事件中执行“ event.preventDefault() ”来防止“ mouse*-click ”事件发生,但是只有这样,而不是在touchmove和touchend 。 这是一个奇怪的devise,因为在touchstart期间不可能知道用户是否意图拖动或轻扫,或者只是点击/点击该项目。 我最终设置了一个与时间戳绑定的“ignore_next_click”标志,但这显然不是很干净。 有没有人知道这样做的更好方法,还是我们错过了什么? 请注意,虽然“咔嗒”可以被识别为“ touchstart-touchend ”序列(即没有“ touchmove ”),但某些事情(如键盘input焦点)只能在正确的click事件中发生。

如何在Flow中注释具有多个可能的呼叫签名的函数?

在JavaScript中,通常有一个可以以多种方式调用的函数 – 例如less量位置参数或单个选项对象或二者的组合。 我一直在试图解决这个问题。 我尝试过的一种方法是将其余的参数注释为各种可能的元组的联合: type Arguments = | [string] | [number] | [string, number] ; const foo = (…args: Arguments) => { let name: string; let age: number; // unpack args… if (args.length > 1) { name = args[0]; age = args[1]; } else if (typeof args[0] === 'string') { name = args[0]; age […]

继续dynamic文本到单独的<p>段落?

下面的小提琴允许将文本粘贴到一个<textarea>并且由相同数量的字符dynamic地生成为相等的段落。 发生的问题是; 来自先前dynamic生成的段落的文本在每个标签内溢出并且不能正确地继续到下一个dynamic段落。 因此,用户是否可以按下input键并将该内容向下移动到下一个现有段落中,同时仍然保持现有格式的dynamic和自动? 如果能提供一个新的小提琴 ,那将是非常值得赞赏的,因为我还是新的编码。 再次,小提琴可以在这里find。 更新:一旦生成了段落,用户是否可以按下回车键,并在可能的情况下将其内容无缝移动到下面的段落中? 同样按下退格button时也是一样的,内容要移到上面那段? 出现的问题是,当按下Enter键时,文本似乎由于css中的溢出属性而隐藏文本。 $(function() { $("#Go").on('click', function() { var theText = $('textarea').val(); var numberOfCharacters = 300; while (theText.length) { while (theText.length > numberOfCharacters && theText.charAt(numberOfCharacters) !== ' ') { numberOfCharacters++; } $("#text_land").append("<br><\/br><p>" + theText.substring( 0, numberOfCharacters) + "<\/p><br><\/br>"); theText = theText.substring(numberOfCharacters); numberOfCharacters = 300; $('p').attr('contenteditable', 'true'); $("p").addClass("text"); } […]

Firefox如何优化这个循环?

当n很小时,用Ω(n)循环方法显示我的Ω(log n)数字填充algorithm,Firefox 9.0.1令我感到惊讶。 在我见过的每一个浏览器中,循环速度都比较慢 ,即使对于很小的n值也是如此。 我知道所有的浏览器都在优化JS,但是由于所有其他的浏览器都显示循环速度较慢,是否有解释Firefox 9的行为? // Ω(log n) function padNumberMath(number, length) { var N = Math.pow(10, length); return number < N ? ("" + (N + number)).slice(1) : "" + number } // Ω(n): function padNumberLoop(number, length) { var my_string = '' + number; while (my_string.length < length) { my_string = '0' + […]

代码折叠在书上

RMarkdown中的代码折叠选项是非常棒的。 该选项使程序化方法对于感兴趣的人是透明的,而不会迫使观众翻阅数英里的代码。 通过散文和交互式graphics输出,代码的紧密放置使得整个项目更容易被更广泛的读者所接受,而且还减less了对额外文档的需求。 对于一个更大的项目,我正在使用bookdown,而且效果很好。 唯一的问题是没有代码折叠选项。 代码折叠当前未在bookdown中启用。 (请参阅在bookdown中启用代码折叠 ) 我知道我不需要一个select来实现它。 我只需要把正确的代码粘贴在正确的地方或地方。 但是什么代码和哪里? 一个可行的替代方法是将代码块放置在页面中块的输出之下。 或者,最后把它们作为附录。 我可以做到这一点,但不能像rbookdown重现。

在Visual Studio 11中使用Chrome启用脚本debugging

我有一个MVC 4的Web应用程序与一些JavaScript与Internet Explorer工作正常,并给与Chrome的问题。 我正在考虑使用Chrome浏览器作为Visual Studio 11中的浏览器进行debugging,可以从debugging下拉列表中select:问题是我无法弄清楚如何启用脚本debugging:当我debugging断点时,通常是警告 没有符号已经加载这个文件 我知道我可能直接在Chrome中debugging脚本,但是我更喜欢使用Visual Studio来保持一致,因为它涉及到几个lenghty js库。 从以前的文章中我可以看出,使用Visual Studio 2008这是不可能的:有没有人知道用Visual Studio 11做到这一点的方法? PS:附加的Chrome进程没有帮助,因为debugging模式是“本机”而不是“脚本” PSII:我也尝试使用Attach …菜单中的Attach to: Script Code选项来附加Chrome浏览器(这会将debugging模式切换为脚本 ),但这并没有帮助。