Tag: JavaScript

在JavaScript中使用dynamic(可变)string作为正则expression式模式

我想添加一个(variables)标签值与正则expression式,该模式对PHP工作正常,但我有麻烦实施到JavaScript。 模式是( value是variables): /(?!(?:[^<]+>|[^>]+<\/a>))\b(value)\b/is 我逃避了反斜杠: var str = $("#div").html(); var regex = "/(?!(?:[^<]+>|[^>]+<\\/a>))\\b(" + value + ")\\b/is"; $("#div").html(str.replace(regex, "<a href='#" + value +">" + value + "</a>")); 但是这似乎不是正确的,我logging了模式和它应该是什么。 有任何想法吗?

带有可编辑的checkbox列的jqGrid

当使用jqGrid时,你如何强制一个单元格加载到页面加载的可编辑视图以及单击它时? 如果像下面那样设置“单元格编辑”,只有在单击单元格时才会出现checkbox。 { name: 'MyCol', index: 'MyCol', editable:true, edittype:'checkbox', editoptions: { value:"True:False" }, cellEdit:true, 同时点击checkbox,有没有办法发送一个AJAX的post到服务器上,而不必依靠用户按回车?

如何使用JavaScript在string中find一个数字?

假设我有一个string – “你可以input最多500个select”。 我需要从string中提取500 。 主要问题是string可能会有所不同,如“您可以input最多12500个选项”。 那么如何获得整数部分?

将数组拆分成N个长度的块

如何将数组(包含10个项目)拆分为4个块,其中最多包含n项目。 var a = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; //a function splits it to four arrays. console.log(b, c, d, e); 它打印: ['a', 'b', 'c'] ['d', 'e', 'f'] ['j', 'h', 'i'] ['j'] 以上假定n = 3 ,但是,该值应该是dynamic的。 谢谢

密码强度计

我有一种情况,我希望能够在我的系统的networking界面中对用户密码进行评分,以便在他们提交之前知道他们是否有错误的密码。 关键要求: 必须能够评分密码,而不仅仅是通过/失败。 如果密码在阈值以下,应该禁用表单,所以用户不能提交。 看起来不错。 🙂 不使用jQuery – 我们目前在这个系统中使用Mochikit和Y!UI。 我发现许多使用jQuery编写的密码表,以及诸如http://www.passwordmeter.com/的内容太冗长。 任何人都可以build议一个很好的下降,我可以使用javascript密码评估者,或者给一个如何写一个例子?

如何使用Twitter Bootstrap API检测您正在使用的设备视图?

我刚刚开始使用Twitter Bootstrap API来开发一个项目。 主导航包含三个主要元素: 网站导航 社交链接导航 search网站表单 在移动设备上查看网站时,我正在使用折叠插件折叠站点导航和search表单。 移动视图有2个button,当点击切换search表单或主导航开/关。 但是,如果我切换search表单,然后调整我的浏览器到桌面视图的search窗体仍然隐藏在这个视图? 我已阅读有关使用类,如可见移动等,但这些似乎与崩溃插件冲突。 我也意识到我可以写我自己的CSS黑客来解决这个问题,但我想问问是否有一个更简单的解决scheme。 Bootstrap有显示,显示,隐藏和隐藏的事件,所以我想也许我可以写一些自定义JS来显示或隐藏这些项目在每个特定的设备视图。 但是,我不知道如何检测当时使用的设备。 思考? 提前致谢

JS的正则expression式按行分割

你如何将一段长长的文本分成不同的行? 为什么这个返回line1两次? /^(.*?)$/mg.exec('line1\r\nline2\r\n'); [“line1”,“line1”] 我打开多行修饰符,使^和$匹配行的开始和结束。 我也打开全局修改器捕捉所有行。 我希望使用正则expression式分割而不是String.split因为我将处理Linux \n和Windows \r\n行尾。

断点debuggingminfied / mangled /编译variables

着手将JavaScript源代码构build到我的工作stream程中,并且一直在寻找关于debugging源地图的特定部分的一些文档。 在下面的图片中,我正在运行压缩的Javascript代码,但通过源地图的魔力,Chromedebugging器能够重build看似未压缩的代码,供我debugging: 但是,如果您查看本地variables, someNumber和someOtherNumber未定义。 相反,我们有a和r ,这是这个函数编译的variables名称。 这对于Mozilla Firefox和Chrome都是一样的。 我试图通过源代码映射的Chrome开发工具文档 ,但我没有看到任何关于这方面的文章。 这是目前的源代码debugging的限制,是否有任何解决方法呢? 更新 : 我已经find铬项目问题的线程 。 它看起来不像已经或正在执行。 随着团队开始在构build系统中实现Babel来编写ES2015代码,这正变得越来越重要。 有任何团队find解决办法吗?

与Node.js长时间连接,如何减less内存使用并防止内存泄漏? 还与V8和webkit-devtools相关

下面是我正在做的事情:我正在开发一个Node.js http服务器,它将在一台机器上为成千上万的移动客户端推送目的(与redis协作)保持长时间连接。 testing环境: 1.80GHz*2 CPU/2GB RAM/Unbuntu12.04/Node.js 0.8.16 在第一次使用“快速”模块时,在使用交换之前,我可以达到约12万个并发连接,这意味着RAM不够。 然后,我切换到本地“http”模块,我得到的并发性高达160K。 但是我意识到在本地http模块中仍然有太多的function,所以我把它切换到本地“net”模块(这意味着我需要自己处理http协议,但没关系)。 现在,我可以达到每台机器大约25万个并发连接。 这是我的代码的主要结构: var net = require('net'); var redis = require('redis'); var pendingClients = {}; var redisClient = redis.createClient(26379, 'localhost'); redisClient.on('message', function (channel, message) { var client = pendingClients[channel]; if (client) { client.res.write(message); } }); var server = net.createServer(function (socket) { var buffer = ''; socket.setEncoding('utf-8'); […]

取消后如何继续事件传播?

当用户点击某个链接时,我想给他们一个确认对话框。 如果他们点击“是”,我想继续原来的导航。 一个catch:我的确认对话框是通过返回一个jQuery.Deferred对象来实现的,只有当用户点击Yesbutton时才parsing。 所以基本上确认对话框是asynchronous的。 所以基本上我想要这样的东西: $('a.my-link').click(function(e) { e.preventDefault(); e.stopPropogation(); MyApp.confirm("Are you sure you want to navigate away?") .done(function() { //continue propogation of e }) }) 当然,我可以设置一个标志,并重新触发点击,但这是混乱的。 任何自然的方式呢?