Tag: javascript

JSON解析文件路径

我试图获取本地文件的正确路径。 我有以下目录: Resources -> data -> file.json js -> folder -> script.js html -> folder -> file1.html 我正在从file1.html执行script.js ,使用js代码: var answers = JSON.parse(‘../../data/file.json’); alert(answers); 但它不起作用,即使警报没有开始。 怎么了? 我也试过这个: function readJSON(file) { var request = new XMLHttpRequest(); request.open(‘GET’, file, false); request.send(null); if (request.status == 200) return request.responseText; }; var temp = readJSON(‘../../data/file.json’); alert(temp); 在这种情况下,警报未定义。

javascript:按数组表示法字符串访问对象(数组)

我想访问提供的对象,只有它的数组forms的字符串路径是已知的。 1.)有一个对象,在哪里 root[“obj1”][“obj2”] = 1; (通常情况下, root[“obj1”]…[“objN”] ) 2.)我只有字符串objectPath已知: var objectPath = ‘root[“obj1”][“obj2”]’ 3.)我不仅要读取对象,还要设置它的值,就像 objectPath = 2; //so root[“obj1”][“obj2”] === 2 我认为 eval()可能有一些选项,但它获取的是值,而不是变量; 一个人可以遍历root的所有对象,转换为“root.obj1.obj2”(事实并非如此,因为“obj1”很容易就是“obj with spaces1”)并检查给定的字符串是否等于当前对象环。 http://jsfiddle.net/ACsPn/ 相关链接: 使用点表示法字符串访问对象子属性

chrome MutationObserver用于新段落文本

我还没有真正理解如何使用mutationObserver但我现在看起来有些正确……我想在代码中出现新的p标签时做一个动作..这是我的代码到目前为止: var target = $(‘p’); var observer = new WebKitMutationObserver(function(mutations) { mutations.forEach(function(mutation) { chrome.storage.sync.get({ getInjection: true }, function(getInject) { var getInjectionState = getInject.getInjection; if(getInjectionState == true) { arrayOfP = $(“p”).text(); chrome.runtime.sendMessage(arrayOfP, manageResponse); } }); }); }); observer.observe(target[0], { attributes: true, childList: true, characterData: true }); 此代码位于chrome扩展程序的内容脚本中。 为什么不工作? 任何帮助,将不胜感激。 谢谢!

将JavaScript对象数组排序为特定顺序(使用现有函数)

给定一组对象: {key:“a”,值:42},{key:“d”,值:28},{key:“c”,值:92},{key:“b”,值:87} 和一组键: [“c”, “a”, “b”, “d”] 是否有ECMAScript函数或第三方JavaScript库,允许您在一行/函数调用中排序第一个对象数组,以匹配第二个数组中指定的键的顺序,结果是: { 关键:“c”, 价值:92 }, { 关键:“a”, 价值:42 }, { 关键:“b”, 价值:87 }, { 关键:“d”, 价值:28 } 提供function或算法的其他问题: Javascript – 基于另一个数组排序数组 – Stack Overflow javascript – 如何根据另一个数组的顺序对对象数组进行排序? – 堆栈溢出 相似/相关问题: 按特定顺序对PHP中的对象数组进行排序 php – 排序对象数组

如果Google Analytics(分析)发生故障,我该如何保持网站正常运行?

好吧它是2013年1月19日22:30 NZST和大多数互联网似乎已经爬行,因为Google Analytics似乎运行速度非常慢。 Stackoverflow,Firefox.com,reddit和谷歌搜索都很慢。 对我来说最重要的是,我的生产商网站运行缓慢或根本没有加载。 不,这不仅仅是我的连接,我也在3G手机上测试了它。 没有Google Analytics的网站似乎运行正常。 这是一些发生的截图 这位于Firefox窗口的左下角。 它会像那样在那里停留20多秒。 如果它无法连接,我希望它在3秒后消失。 这个旋转的绿色图像位于Firefox选项卡中,只是坐在那里使它看起来像页面仍然加载20秒以上。 如果它无法连接,我希望它在3秒后消失。 现在它可能不是谷歌分析,我的国家’国际网关可能运行缓慢或其他东西。 但有证据表明它可能是谷歌分析。 现在,即使它不是谷歌分析,那么如果服务完全失效,我仍然会对某些方法感兴趣。 所以假设我们假设Google Analytics数据中心发生大火并且灭火系统失败了。 现在,Google Analytics几天完全脱机。 没有备份服务器。 没有备用数据中心。 假设情景确定。 现在我的网站仍然需要运行,因为我无法让我的网站依赖Google Analytics服务。 但是,如果服务实际上及时运行,那么分析function可以作为额外的奖励。 好的,我在这里抛出一些想法: 我可以添加到我的脚本中的超时是否会取消与Google Analytics的连接并停止请求/下载如果花费的时间过长? 然后它会在2秒后继续加载我的网站。 或者更好的是,也许它可以完全加载我的网站,然后在我的网站完全加载后使用Ajax向Google Analytics发送请求? 为什么默认情况下不这样做? 这是我们必须使用的代码,它当前在结束标记之前插入。 var _gaq = _gaq || []; _gaq.push([‘_setAccount’, ‘UA-123456789-1’]); _gaq.push([‘_trackPageview’]); (function() { var ga = document.createElement(‘script’); ga.type = ‘text/javascript’; ga.async = […]

如何在javascript中获取html标记值(div)

我在网站http://www.phoneformat.com/中实现了这个function(libphonenumber javascript) 如何获取此html标记返回的值。 是或否 ‘ 我试过这个 function checkSubmit(){ var country=$(“#phone_valid”).val(); if(country==”No”) { alert(“Not a valid number”); return false; } 到目前为止没有运气

如何在移动视图中点击箭头时向左和向右滚动内容?

我有一个小提琴 ,其工作方式是当我在移动视图中取出时,方框水平滚动。 我用过的CSS代码是: @media only screen and (max-width: 767px) { .product-all-contents { overflow-x: auto; } .product-contents .product{ min-width: 50.795%; margin: 0 2%; padding-top: 3.91%; padding-left: 3.91%; padding-right: 3.91%; } } 问题陈述: 我想知道我应该在小提琴中做出什么改变,以便当我在移动视图中点击箭头时(如下面的屏幕截图中标有橙色箭头标记所示) ,内容向左移动,反之亦然。 我认为最好的解决方案将是jQuery,scrollLeft()和scrollRight(),但我不知道如何在小提琴中实现它。

将额外参数传递给jQuery getJSON()成功回调函数

我以前从未使用过回调函数,所以我可能犯了一个完全愚蠢的错误。 我想我有点理解这里的问题,但不知道如何解决它。 我的代码(稍微简化)是: for (var i = 0; i < some_array.length; i++) { var title = some_array[i]; $.getJSON('some.url/' + title, function(data) { do_something_with_data(data, i); } 据我所知,只有getJSON()收到数据时才会调用此匿名函数。 但就此而言, i没有我需要的价值。 或者,就我的观察而言,它具有循环完成后它将具有的最后一个值(它不应该超出界限吗?)。 因此,如果数组的大小为6,则do_something_with_data()将被调用五次,值为5。 现在我想,只要把i传递给匿名函数 function(data, i) { } 但这似乎不可能。 我现在不确定。

可以创建一个div来表示下拉菜单吗?

我正在使用jquery从文本文件填充下拉菜单,它工作正常。 但在视觉上,我希望它看起来不同。 我的下拉是一个div。 我想做的是让div本身可以点击,这样当你点击它时,会弹出下拉菜单选项。 选择选项后,div的标签将设置为所选选项的文本。 有没有办法让下拉菜单隐藏但仍然有效?

使用javascript,jQuery启动和停止/暂停setInterval

我试图暂停,然后播放一个setInterval循环。 在我停止循环后, 我尝试的“开始”按钮似乎不起作用: HTML: JS: input = document.getElementById(“input”); function start() { add = setInterval(“input.value++”,1000); }start(); 有没有更好的/工作方式来做到这一点? 你可以自由使用jQuery。 谢谢!