草庐IT

猿创征文|那些年我们追过的那些技术

全部标签

javascript - 在 Chrome 中检测访问过的链接

我正在为Chrome和Firefox使用用户脚本,我正在检查用户访问过的链接。我有a{color:blue;}a:visited{color:red!important;}在页面加载后立即导入我的css。我访问过的页面上的a链接是红色的,而不是默认的蓝色。然后我使用:alert(window.getComputedStyle(document.getElementById("myLink"),null).getPropertyValue("color"))在每个链接上,对于在Firefox中访问过的链接,它们都返回红色,但在Chrome中,它们都返回蓝色。我想知道如何在Chrome中使

javascript - 我们可以将游标设置为 session 变量吗?

我试图将游标设置为session变量,但它似乎不起作用。有人知道吗??我的代码:Meteor.call('apiresult',function(e,result){console.log(result);Session.set("object",result)});//gettingvariablevarabc=Session.get("object");returnabc.skimlinksProductAPI.numFound;好像没用 最佳答案 游标可以实际上存储在Session中...有时。打开leaderboardapp

javascript - Chrome 的 firebug 跟踪 ajax 请求的技术

我正在尝试让我的googlechrome扩展程序在浏览网页时跟踪ajax请求。我发现的唯一方法是监听DOMSubtreeModified事件。每个ajax事件都会触发事件,但没有关于请求的其他信息。但是在Firebuggooglechromeextension中有ajax请求跟踪,其中包含许多细节。我试图在源代码中检查他们是如何做到的,但我很难理解。您知道如何跟踪这些事件以获取有关请求的一些详细信息吗?也许有人可以看看这个Firebug的技术,或者也许有人知道并可以告诉我他们是怎么做到的? 最佳答案 您可以使用Chrome开发者工具

javascript - 我们如何使用 React Hooks 实现 componentWillUnmount?

方法componentWillUnmount()在组件被卸载和销毁之前立即被调用。如果我们使用带有空数组([])作为第二个参数的useEffect并将我们的函数放在return语句中,它将在组件卸载后执行,甚至在安装另一个组件后执行。据我了解,这样做是出于性能原因。为了不延迟渲染。所以问题是-我们如何在卸载组件之前使用钩子(Hook)调用一些函数?我想做的是一个应用程序,它可以在用户键入时保存他的输入(无需提交表单)。我使用setInterval每N秒保存一次更新的文本。我需要在卸载组件之前强制保存更新。我不想在导航之前通过react路由器使用提示。这是一个电子申请。我很感激任何有关如

javascript - 我们应该有浏览器端验证吗

对于将在内部使用且用户接受过使用培训的后台应用程序,进行浏览器端验证是否有意义。经过培训的用户很少会犯错。这些错误会在服务器端被发现。还要记住,带宽可用性是一个次要问题,我认为我们应该避免浏览器端验证。这将节省在两个地方维护相同功能的工作量。 最佳答案 您始终需要服务器端验证。就客户端验证而言,它不仅可以节省流量,还可以提高可用性(即时响应,无需往返服务器)。不过它是可选的。您可以通过在一个地方定义一些常量并将它们注入(inject)您的JavaScript来最大限度地减少保持两个功能同步的工作量。例如,这对于文本框的输入限制等情况

Javascript:快速查找对象中的值(就像我们可以使用属性一样)

我有一个对象,它有一对用于简单编码/解码的替换值(不是为了安全,只是为了方便;太复杂了,无法在这里解释)。它的形式是varobj={x:y,x:y,...};其中“x”是编码时的值,“y”是解码后的值。解码很简单:我循环遍历字符串的字符,并通过括号查找对象中的charAt(i)值:obj[str.charAt(i)]。(我没有检查我们是否需要大写或小写版本(对象中的所有键/值都是小写),但这很简单。)为了编码,我当然必须在对象中寻找值,而不是属性。目前,我正在使用for...in...循环遍历属性,并根据charAt(i)值检查值。我当前的代码是:vari,j,output='',st

javascript - 为什么我们需要 backbone js 或任何 JS MVC 框架?

如果我们已经在使用后端MVC框架(例如Django或ROR),为什么我们需要使用JSMVC框架(主干)。我无法理解两个MVC框架的概念以及它们如何组合在一起。我认为所有与前端相关的文件或逻辑(html、css、js)都在后端框架的View组件下。有人可以用更简单的术语解释一下吗? 最佳答案 Backbone在客户端[浏览器],为了有快速的交互和体验。这样您就可以通过websockets进行实时通信。,或LocalStorage例如。使用客户端MVC[MVVM更好,在Backbone的情况下]意味着您只需从服务器提供一组RESTful

javascript - 我们如何在 phantomjs 中使用 evaluateAsync

evaluateAsync的用法是什么,我们什么时候必须使用这个函数,使用这个函数有什么好处。在下面我们看到一个可怜的documentation为此:varwebPage=require('webpage');varpage=webPage.create();//@TODO:Finishpage.evaluateJavaScriptexample.任何主体都可以展示在phantomjs中使用evaluateAsync的示例 最佳答案 此函数允许您执行任何JavaScript代码,例如evaluateAPI函数。但它会评估你的代码异步

javascript - 为什么我们需要 JS 中的 Promise

我刚刚在MDN上阅读了Promise.我可以理解语法,但不确定我们为什么需要它。是否有特定情况只能使用Promise来完成?或者它只是一种编写更简洁代码的方法? 最佳答案 Promises使我们能够编写更简洁的代码,同时减少(或完全消除)回调hell。此外,回调是ES2017中一些新语法功能的支柱,例如asyncfunctions,它允许以更简洁的方式编写代码。当您第一次学习语法时,promises做的第三件事并不是立即显而易见的——自动错误处理。Promises允许错误沿着链传递并在一个公共(public)位置处理,而无需放置多层

javascript - 为什么我们在从 ajax json 调用获得响应时使用 data.d?

我正在使用来self的Html页面的AJAX调用来调用来self的asmx.cs文件的方法,使用以下代码:functionajaxCall(){varUserName=$("#").text();$("#passwordAvailable").show();$.ajax({type:"POST",url:'webServiceDemo.asmx/CheckOldPassword',contentType:"application/json;charset=utf-8",dataType:"json",data:JSON.stringify({UserName:UserName}),su