Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。

7
如何在Javascript中将字符串修剪为N个字符?
我如何使用Javascript编写一个函数,将将作为参数传递的字符串修整为指定的长度(也作为参数传递)。例如: var string = "this is a string"; var length = 6; var trimmedString = trimFunction(length, string); // trimmedString should be: // "this is" 有人知道吗?我听说过有关使用子字符串的信息,但并不太了解。
169 javascript  string  trim 

19
当悬停父绝对div的子元素而没有jQuery时,防止onmouseout
我onmouseout在绝对位置div中的函数遇到麻烦。当鼠标单击div中的一个子元素时,将触发mouseout事件,但我不希望它触发,直到鼠标不在父绝对div之外。 我如何防止mouseout事件在没有jquery的情况下击中子元素而触发。 我知道这与事件冒泡有关,但是我没有运气去寻找如何解决这个问题的方法。 我在这里找到了类似的帖子:如何禁用由子元素触发的mouseout事件? 但是,该解决方案使用jQuery。

14
异步/等待类构造函数
目前,我正在尝试async/await在类构造函数中使用。这样一来,我就可e-mail以为正在从事的Electron项目获取自定义标签。 customElements.define('e-mail', class extends HTMLElement { async constructor() { super() let uid = this.getAttribute('data-uid') let message = await grabUID(uid) const shadowRoot = this.attachShadow({mode: 'open'}) shadowRoot.innerHTML = ` <div id="email">A random email message has appeared. ${message}</div> ` } }) 但是,此项目目前无法正常工作,并出现以下错误: Class constructor may not be an async method 有没有办法避免这种情况,以便我可以在其中使用异步/等待?而不是需要回调或.then()?

4
SameSite警告Chrome 77
自上次更新以来,我的Cookie出现错误,与SameSite属性相关。 Cookies来自第三方开发人员(Fontawesome,jQuery,Google Analytics,Google reCaptcha,Google Fonts等)。 Chrome控制台中的错误是这样的。 A cookie associated with a cross-site resource at <URL> was set without the `SameSite` attribute. A future release of Chrome will only deliver cookies with cross-site requests if they are set with `SameSite=None` and `Secure`. You can review cookies in developer tools under Application>Storage>Cookies …


7
jQuery获取元素相对于窗口的位置
给定一个HTML DOM ID,如何在JavaScript / JQuery中获取元素相对于窗口的位置?相对于文档或偏移父对象而言,这是不同的,因为该元素可能位于iframe或某些其他元素内。我需要获取当前显示的元素矩形的屏幕位置(在位置和尺寸上)。如果该元素当前处于屏幕外(已滚动显示),则可以接受负值。 这适用于iPad(WebKit / WebView)应用程序。每当用户点击中的特殊链接时UIWebView,我都应该打开一个弹出视图,以显示有关该链接的更多信息。弹出视图需要显示一个箭头,该箭头指向调用它的屏幕部分。

9
使用HTML5历史记录API的好教程(Pushstate?)
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 5年前关闭。 改善这个问题 我正在研究使用HTML5历史记录API解决与AJAX加载的内容的深层链接问题,但我正在努力下手。有谁知道任何好的资源吗? 我想使用此方法,因为这似乎是允许发送那些链接可能未打开JS的可能性的好方法。当使用JS的人向不使用JS的人发送链接时,许多解决方案都会失败。 我的初步研究似乎指向JS中的History API和pushState方法。 http://html5demos.com/history

6
JavaScript闭包如何被垃圾回收
我已记录以下Chrome错误,这导致我的代码中发生了许多严重且不明显的内存泄漏: (这些结果使用Chrome Dev Tools的内存配置文件,该内存配置文件运行GC,然后对未垃圾收集的所有内容进行堆快照。) 在下面的代码中,someClass实例被垃圾回收(良好): var someClass = function() {}; function f() { var some = new someClass(); return function() {}; } window.f_ = f(); 但是在这种情况下,它不会被垃圾回收(不好): var someClass = function() {}; function f() { var some = new someClass(); function unreachable() { some; } return function() {}; } window.f_ = …

3
如何告诉AngularJS“刷新”
我有一个click事件发生在我的自定义指令范围之外,因此,我使用jQuery.click()侦听器并在我的范围内调用一个函数,而不是使用“ ng-click”属性,如下所示: $('html').click(function(e) { scope.close(); ); close()是一个简单的函数,如下所示: scope.close = function() { scope.isOpen = false; } 在我看来,我有一个绑定到isOpen的“ ng-show”元素,如下所示: <div ng-show="isOpen">My Div</div> 调试时,我发现正在调用close(),isOpen被更新为false,但是AngularJS视图没有更新。有没有办法手动告诉Angular更新视图?还是有一种解决我所未见的“角度”解决方案?

12
输入触发器按钮单击
我有一个带有两个按钮的页面。一个是<button>元素,另一个是<input type="submit">。按钮按此顺序显示在页面上。如果我在表单中任意位置的文本字段中,然后按<Enter>,click则触发按钮元素的事件。我认为那是因为button元素位于第一个位置。 我找不到任何看起来像是设置默认按钮的可靠方法的东西,在这一点上我也不一定想要。在没有更好的方法的情况下,我在窗体上的任何地方都捕获了按键,并且,如果它是<Enter>被按下的键,那么我就是在否定它: $('form').keypress( function( e ) { var code = e.keyCode || e.which; if( code === 13 ) { e.preventDefault(); return false; } }) 据我所知,它似乎正在工作,但感觉很难受。 有谁知道更复杂的技术来做到这一点? 同样,我只是不知道该解决方案有什么陷阱? 谢谢。
168 javascript  jquery  html  forms  enter 

11
如何编辑JavaScript警报框标题?
我正在C#.NET页面中使用以下代码生成JavaScript警报: Response.Write("<script language=JavaScript> alert('Hi select a valid date'); </script>"); 它显示一个警告框,标题为“来自网页的消息”。 可以修改标题吗?
168 javascript  alert 

3
标签或窗口处于非活动状态时,浏览器如何暂停/更改Javascript?
背景:我正在做一些用户界面测试,这些测试需要检测人们是否在关注。但是,这个问题是不是有关的页面知名度API。 具体来说,我想知道如果在不同的浏览器中当前选项卡处于不活动状态或浏览器窗口处于不活动状态,我的Javascript代码将受到什么影响。到目前为止,我已经挖掘了以下内容: 标签不活动时,iOS 5暂停JavaScript setIntervalsetTimeout当选项卡不活动时,延迟减少了 -好像这是最近才开始出现的,并且可能会扰乱Jasmine单元测试等。 requestAnimationFrame 选项卡处于不活动状态时速度变慢(合理,无法考虑为什么这会对任何人产生太大影响) 我有以下问题: 除了移动浏览器之外,桌面浏览器是否会在选项卡处于非活动状态时暂停JS执行?什么时候使用哪些浏览器? 哪些浏览器减少setInterval重复次数?它只是减少到一个极限还是一个百分比?例如,如果我有一个10ms的重复与一个5000ms的重复,那么每个都会受到影响吗? 如果窗口不在焦点上,而不是仅在选项卡上,这些变化会发生吗?(我想这将更难检测,因为它需要OS API。) 在活动选项卡中是否还有其他效果无法观察到?他们会搞乱本来可以正确执行的事情(即上述的茉莉花测试)吗?

20
如何从JavaScript中的字符串中提取基本URL?
我试图找到一种相对简单可靠的方法,使用JavaScript(或jQuery)从字符串变量中提取基本URL。 例如,给出如下所示: http://www.sitename.com/article/2009/09/14/this-is-an-article/ 我想得到: http://www.sitename.com/ 正则表达式是最好的选择吗?如果是这样,我可以使用什么语句将从给定字符串中提取的基本URL分配给新变量? 我已经对此进行了一些搜索,但是我在JavaScript世界中发现的所有内容似乎都围绕着使用location.host或类似名称从实际文档URL收集此信息。
168 javascript  regex  string  url 

20
获取数组中所有选定的复选框
所以我有这些复选框: <input type="checkbox" name="type" value="4" /> <input type="checkbox" name="type" value="3" /> <input type="checkbox" name="type" value="1" /> <input type="checkbox" name="type" value="5" /> 等等。它们大约有6个,并且都是手工编码的(即未从数据库中获取),因此它们可能会保持一段时间不变。 我的问题是如何将它们全部放入一个数组中(在javascript中),以便在$.post使用Jquery 进行AJAX 请求时可以使用它们。 有什么想法吗? 编辑:我只希望将选中的复选框添加到数组
168 javascript  jquery  ajax  dhtml 

3
函数调用后的两组括号
我一直在寻找过滤器在Angularjs中的工作方式,我看到我们需要发送2套括号。 $filter('number')(number[, fractionSize]) 它是什么意思,以及我们如何使用JavaScript处理它?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.