Tag: JavaScript

在Javascript中replace正则expression式匹配的第n个实例

我正在尝试编写一个正则expression式函数,它将识别并replacestring中单个匹配的实例,而不会影响其他实例。 例如,我有这个string: 12||34||56 我想用&符replace第二组pipe道来获得这个string: 12||34&&56 正则expression式函数需要能够处理x数量的pipe道,并允许我replace第n组pipe道,所以我可以使用相同的函数来进行这些replace: 23||45||45||56||67 -> 23&&45||45||56||67 23||34||98||87 -> 23||34||98&&87 我知道我可以在pipe道上拆分/replace/连接string,并且我也知道我可以在/\|\|/上匹配,并遍历结果数组,但是我很想知道是否有可能写一个可以做到这一点的expression式。 请注意,这将用于Javascript,所以可以使用eval()在运行时生成正则expression式,但不能使用任何Perl特定的正则expression式指令。

jQuery:.click()和.on(“click”)之间的区别

我通常使用 $(selector).click(… 但有些人推荐我用这个来代替: $(selector).on("click", function(… 或者$(selector).live("click"… (已弃用) 我看了这本手册,但我的执行者的头脑无法理解。 我混淆了他们使用的所有术语。 我还是不知道为什么使用.on() http://api.jquery.com/on/

我可以在JavaScript中的对象声明期间引用其他属性吗?

我正在尝试做这样的事情: var obj = { a: 5, b: this.a + 1 } (而不是5有一个函数,我不想执行两次返回一个数字) 我可以改写它来从obj.a分配obj.b ,但是我可以在声明中立即执行吗?

检测iframe内容是否已成功加载

我有一个包含iframe的小部件。 用户可以configuration此iframe的url,但如果url无法加载(不存在或用户无法访问Internet),则iframe应该故障转移到默认的脱机页面。 问题是,如何检测iframe是否可以加载? 我尝试订阅“加载”事件,如果这个事件没有被解雇一段时间后,我故障转移,但这只适用于Firefox,因为IE浏览器和Chrome浏览器的“加载”事件时,“页面找不到”是显示。

“未捕获的ReferenceError:这是没有定义”在类的构造函数

我正在使用JavaScript / ES6中的新东西。 我得到一个Uncaught ReferenceError: this is not defined(…) player.js:5在我的代码。 据我所知,这里没有错误! 这是一个错误? 任何解决方法? 的index.html <html> <head> <script type="text/javascript" src="js/entity.js"></script> <script type="text/javascript" src="js/player.js"></script> <link href="css/style.css" rel="stylesheet" type="text/css"> <title>Test</title> </head> <body> <canvas id="screen" width=500 height=500></canvas> <script type="text/javascript">initialize();</script> </body> </html> entity.js "use strict"; class Entity { constructor() { console.log("Entity"); } } player.js "use strict"; class Player extends Entity […]

JavaScript对象中关键查找的性能

我刚刚阅读这个问题: 是否有像JavaScript的JavaScript字典? 其中一个答案是,你可以使用Python对象等JavaScript对象。 真的吗? 对象中的关键字查询的性能如何? 是O(1)吗? 是恒定时间(哈希)添加一个关键的对象?

有什么好办法来防止人们复制我的源代码?

我有很多自定义的JavaScript和布局devise,我想阻止人们使用这些。 有没有什么实际的方法来做到这一点,或者我基本上只需要快乐我的PHP代码不显示? 我想至less难以复制我的网站。

jQuery的:如何滚动到页面加载某些锚/ div?

最近我试图更频繁地使用jQuery,现在我有一些问题,我想用jquery解决希望你能帮助我。 我有一些网页,包括一些锚点标签(可以说,锚点位于页面的中间),并在事件onload我希望页面上启动某个锚点标签的位置意味着页面将“滚动”automaticaly到某个地点。 这是我以前的解决scheme(这是相当丑陋,因为它增加了#i到我的url) window.onload = window.location.hash = 'i'; 无论如何,你可以告诉我,我怎么能用jQuery来做到这一点? 注意:我不希望用户在到达此位置时感觉到任何幻灯片或效果

YouTubevideo播放结束后的事件

点击图片后,我有简单的HTML代码播放YouTubevideo。 <body> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <div id="ytapiplayer2" style="display:none;"> <object width="1280" height="745"> <param name="movie" value="http://www.youtube.com/v/kCfP003Btjw?fs=1&hl=en_US&rel=0&autoplay=1"></param> <param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param> <embed src="http://www.youtube.com/v/kCfP003Btjw?fs=1&hl=en_US&rel=0&autoplay=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="1280" height="745"></embed> </object> </div> <img src="https://i.qmyimage.com/mgen/global/zGetImageNew.ms?args=%22shpimg4198.jpg%22,425,96,1" id="imageID" /> <script type="text/javascript"> $('#imageID').click(function() { $('#ytapiplayer2').show(); $('#imageID').hide(); }); </script> </body> video播放结束后,我需要隐藏video并显示图像。 如何实现?

为什么是“element.innerHTML + =”错误的代码?

我已经被告知不要使用element.innerHTML += …来追加东西element.innerHTML += …就像这样: var str = "<div>hello world</div>"; var elm = document.getElementById("targetID"); elm.innerHTML += str; //not a good idea? 它有什么问题?我还有其他的select吗?