草庐IT

javascript - 删除 JQuery 中的当前事件处理程序?

我想在触发事件时删除事件处理程序。我不能使用one()因为有些情况下我不想删除事件处理程序。这就是我的意思:$('#a').on('click',function(){if(...)//removecurrenteventhandler});编辑:我忘了提到还有其他事件处理程序附加到$('#a')。我只想删除当前的。 最佳答案 使用.off(),名称间隔eventnames$('#a').on('click.myevent',function(){if(...)//removecurrenteventhandler$(this).o

javascript - 悬停时从数据列表中获取当前值

我正在尝试获取数据列表悬停元素的当前值。因此,如果我打开其中包含值的数据列表并将鼠标移到它们上面,我希望这些值出现在控制台中。这是我的尝试:$("#browsers").on("mouseover",function(){console.log($(this).value());});这是一个fiddle:https://jsfiddle.net/sshcvr5q/ 最佳答案 我不确定这是否可行。数据列表选项,虽然在主文档DOM树中仍然可见,但被克隆和encapsulated作为ShadowDOM的一部分树,并且无法从父文档访问。您

javascript - 动态加载时获取当前正在执行的js文件的url

所以我尝试动态加载脚本并找出加载该脚本的URL路径。所以如果脚本是静态加载的(Howtogetthefile-pathofthecurrentlyexecutingjavascriptcode),有人给了我一个非常棒的解决方案来解决这个问题。但我需要一个动态加载的解决方案。例如:$(function(){$.getScript("brilliant.js",function(data,textStatus){//donothing});});“brilliant.js”有:varscripts=document.getElementsByTagName("script");varsrc

javascript - Angular 2.如何检测组件当前是否在视口(viewport)中

我想检测组件位置。当前在视口(viewport)中,如果是,则运行触发器,该触发器统计此特定组件上的动画。我找不到任何“有Angular”的方式来做到这一点。示例应用程序(主要组件)每个div都是应用程序的一个单独组件:wwaarrasfSomething...rq所以...我想检测组件5何时在视口(viewport)中(出现在屏幕上)并开始为该组件设置动画。有什么想法吗?谢谢 最佳答案 您可以使用ng-in-viewport插件。HTML:Something...组件:action(event:any){if(event.valu

javascript - 如何从 Chrome 扩展程序获取当前标签页的引荐来源网址?

从我的chrome扩展程序中,我试图在用户时获取引用链接从另一个网站导航到Amazon.com,但我遇到了一些问题。我正在使用accessingthecurrenthtmlpagefromchromeextensionhtml-page-from-chrome-extension?noredirect=1&lq=1和AccessingCurrentTabDOMObjectfrom"popup.html"?from-popup-html但仍有问题。我在confirmation.js中的js:chrome.tabs.onUpdated.addListener(function(tabId,

javascript - 如何将当前文档的 innerHTML 下载为文件?

有没有办法以编程方式将当前文档的innerHTML下载为文件?我做了以下尝试但没有成功。它会下载当前文档的源代码,但这不是我想要的,因为我想保留任何加载后的文档修改。varsave=document.createElement('a');save.href="mylocationhref.attr";save.target='_blank';save.download=fileName||'unknown';varevent=document.createEvent('Event');event.initEvent('click',true,true);save.dispatchEve

javascript - 如何知道用户当前是否正在使用 Javascript 阅读页面?

我正在制作一个包含动态内容的网页,该网页通过AJAX轮询进入View。页面JS偶尔会在用户阅读其他信息时下载更新的信息并呈现在页面上。这种事情对带宽和处理时间来说是昂贵的。我想在页面未被查看时暂停轮询。我注意到我打开的大部分网页都将大部分时间花在了最小化或未查看的选项卡中。我希望能够暂停脚本,直到页面真正被查看为止。我不知道该怎么做,它似乎试图突破htmlDOM的沙箱并进入用户系统。如果JS引擎不知道其渲染环境,这可能是不可能的。我什至从未见过其他网站这样做(并不是说用户打算看到它...)所以我认为这是一个有趣的讨论问题。您将如何编写一个CPU繁重的Web应用程序,以便在不使用时暂停?

javascript - 如何在离开当前页面之前触发与JS的对话

当用户更改了表单中的某些内容,然后单击任何将把他定向到另一个页面的链接时,我想触发一个弹出窗口,其中包含“你想在离开前保存吗?”选项。我该怎么做? 最佳答案 例子:varshouldConfirm=false;window.onbeforeunload=function(){if(shouldConfirm){return"Youhavemadeunsavedchanges.Wouldyoustillliketoleavethispage?";}}document.getElementById('FullName').onchang

javascript - 定位当前脚本的推荐方法?

我正在编写一个脚本,需要将DOM元素添加到页面,在脚本所在的位置(类似小部件的方法)。执行此操作的最佳方法是什么?以下是我正在考虑的技术:在脚本正上方包含一个id="Locator"的元素。问题:我不喜欢额外的标记如果我在页面中重复使用该小部件,多个元素将具有相同的“定位器”ID。我正在考虑在脚本中添加一行以删除使用过的id,但仍然...给脚本添加一个id。问题:虽然它看起来有效,但id属性对脚本元素无效同样的问题,如果我在页面中重复使用脚本,几个元素将具有相同的id。使用getElementsByTagName("script")并选择最后一个元素。到目前为止,这对我有用,它看起来有

javascript - 如何测试当前是否正在播放声音?

我一直在尝试覆盖通过自动化测试标记,首先只是确认它正在播放。我使用的是常用的AngularTesting套件、karma和Protractor。"devDependencies":{"karma":"~0.10","protractor":"~0.20.1","http-server":"^0.6.1","bower":"^1.3.1","shelljs":"^0.2.6","karma-junit-reporter":"^0.2.2","grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.0","grunt-contrib-concat":"~0