问题标签 [onunload]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何获取 onbeforeunload 事件的目标 URL?
我已经搜索了几个小时,但我找不到解决方案。
这不起作用:
好的,所以要清除这些东西。如果用户单击页面本身的链接,这很容易,因为您可以为所有链接添加事件处理程序 onclick 事件,但是。我想获取地址,即用户在浏览器的 url 框中键入的内容。
javascript - window.onload/onunload 和 body.onload/onunload 的区别
我已阅读问题window.onload 与 <body onload=""/>的答案。在那个问答中,许多人声称window.onload
并且body.onload
是相同的。这不是我所经历的。
考虑两个测试页面:
和:
对于“测试 1”页面,如果您从下拉菜单中选择一个项目并单击链接以离开该页面,然后单击后退按钮,则菜单将重置为其初始状态。但是,“测试 2”页面不会发生这种情况。为什么?
虽然这是一个测试,但我的目标是使用 RegisterStartupScript 或 RegisterClientScriptBlock 在 aspx 页面上执行类似的操作,因此我希望能够在不使用主体 onload/onunload 而是使用 window.onload/onunload 的情况下重新创建“测试 1”的行为.
javascript - 向服务器报告页面花费的时间
当访问者通过关闭选项卡或浏览器离开页面时,是否可以将在页面上花费的时间报告回服务器?使用 Javascript。
它适用于 Firefox、Google Chrome、Safari、Opera 和 IE8(IE7 和 6 不重要)。
但无论如何它都会起作用;即使浏览器正在关闭,或者输入另一个地址。
javascript - Javascript/jQuery:是否有人已经使用 jquery 在页面的顶部 100%:100% 创建了加载固定 div?
我有时会在 javascript onload 和 onunloadbody 事件中使用“加载”方法。(www.restaurantebarocortico.com)
现在我正在学习 jQuery,我使用$(document).ready
&$(window).unload
来替换旧事件,但是 unload 事件无法正常工作。有人知道在卸载时调用函数的另一种方法吗?并且,如果需要,一种中断卸载并产生一些效果的方法(我需要这个方法来显示卸载时加载 div 的效果)。
加载div的流程:
- 它出现在所有内容的顶部(没有效果),中间有一个 ajax-loader gif。
- 文档准备好后,使用 jQuery 函数将其隐藏(效果慢)
- 当文档/窗口正在卸载时,用 jQuery 函数显示它(再次缓慢效果),并中断一段时间的事件(或休眠效果的时间)。
谢谢,对不起我的英语:P José Moreira
javascript - JavaScript onunload 仅在文档完全加载时调用?
我还没有看到任何提及这是 David Flanagan 的“JavaScript - the Definitive Guide”一书(我也在 O'Reilly Answers 上问过这个问题),或者其他任何地方,但我发现 window.onunload除非文档完全加载,否则不会调用,这很烦人!至少对于 IE8 和 Chrome 3 来说是这样
我有一段 Javascript 想要添加到网页底部。如果用户碰巧在页面加载之前点击了页面(^ 见下文),并且在我的 Javascript 有机会运行之前,我希望将其捕获在 onunload 中。但这是不可能的,因为只有在文档完全加载时才会调用 onunload 事件处理程序。如果我不能使用 onunload,还有什么我可以用它来达到同样的效果吗?
^ “Javascript - The Definitive Guide”建议用户与页面的交互在页面加载之前不会发生。我相信这是错误的。这本书是这样说的:
) 如果这样的事件处理程序试图操作文档中尚未解析的部分,它将失败。这种情况在实践中并不常见,通常不值得为积极防范这种情况而付出额外的编码努力。”(第 5 版,第 256 页)
我在 IE8 上进行了测试,表明可以在页面加载的任何阶段与页面交互(并通过锚链接离开)。
感谢您的帮助,保罗
javascript - Javascript onunload表单提交未提交数据
我目前有一个表单,用于检查用户在离开页面时是否有未提交的更改,并使用通过onunload
事件调用的函数。这是功能:
这是表格:
我不确定我在这里做错了什么。如果我只是按下表单的提交按钮,数据就会被提交并保存在我的数据库中。但是,据我所知,尝试通过onunload
事件提交表单不会导致存储任何内容。我已经尝试向onclick
提交按钮添加警报并向onsubmit
表单元素添加警报,我可以验证提交按钮是否被触发并且表单确实被提交。但是,没有任何东西通过存储在数据库中。关于我做错了什么的任何想法?
c# - C# WebPages:管理退出事件或在没有用户操作服务器端的情况下退出
当用户无操作退出到其他页面时,管理退出或退出事件的更好解决方案是什么?此事件只需触发一次,用于删除所有在放弃此页面后未存储的临时文件或数据。非常适合用作服务器端的清洁方法。谢谢。
javascript - 如何在 IE 中的 javascript 的 onunload 事件中获取页面卸载的原因?
页面卸载可能有不同的原因:
1 用户关闭当前窗口。
2 用户导航到另一个位置。
3 单击后退、前进、刷新或主页按钮。
4 用户提交表单,然后浏览器开始卸载当前页面并加载表单提交结果的页面。(假设当前窗口是窗体的目标)。
5 等等...
我可以在 onunload 处理程序中以某种方式知道卸载的原因是 p.4,即移动到带有表单提交结果的页面吗?
我可以在提交表单时定义一些标志,但这并不能解决问题。因为来自网络服务器的响应(在表单提交时)需要一些时间,所以浏览器不会立即卸载当前页面并等待来自服务器的响应。在此等待期间,用户可以关闭窗口或在任何地方导航。而且我需要知道它是否确实移动到结果页面或其他东西......?
javascript - onunload 确认是否可以在同一个窗口中打开一个新的 url?
这是我的第一篇文章,我是一个JS新手,所以请原谅我的无知......
这是我的问题,它分为两部分:
1.) 在onunload
我想要一个警报,询问用户是否想访问相关的 URL。我正在使用的代码有效,但它会在新窗口中打开 URL,即使用户已选择加入,也会被弹出窗口阻止程序阻止。有没有办法让它在同一个窗口中打开并取消弹出窗口阻止程序?
2.) 有没有办法将 onunload 函数从 body 标签中取出并放入脚本中?
这是我正在使用的代码:
提前致谢,
担
php - 是否有推荐的方法来处理保存数据以响应没有 onunload 事件的站点内导航?
序言范围我的问题:
我有一个 Web 应用程序(或站点,这是一个内部 LAN 站点),它广泛使用 jQuery 和 AJAX 在浏览器中动态加载 UI 的内容部分。用户使用导航菜单导航应用程序。单击导航菜单中的项目会对 php 进行 AJAX 调用,然后 php 返回用于填充中心内容部分的内容。
由 php 提供的其中一个页面有一个表格,其设置类似于电子表格,用户可以在其中输入值。该表始终与数据库中的数据保持同步。因此,当创建表时,它是否填充了相关的数据库数据。然后,当用户在“单元格”中进行更改时,该更改会立即写回数据库,因此表和数据库始终保持同步。这种方法是为了向用户保证他们输入的数据已被保存(长篇大论......),并减轻他们不得不点击某种保存按钮的负担。
所以,这个总是同步的想法很好,除了用户可以在一个单元格中输入一个值,而不是将焦点移出单元格,然后采取任何可能导致最后一个值丢失的操作:例如导航到通过导航菜单访问网站的另一部分,退出应用程序,关闭浏览器等。
序言结束,正题:
我最初认为这不是问题,因为我只会跟踪哪些数据是“脏的”或未保存的,然后在 onunload 事件中我会对数据库进行最后的写入。问题就在这里:由于我聪明(或不太聪明,不确定)使用 AJAX 并动态加载内容部分,当采取上述操作时,用户实际上从未离开原始 url 或页面,除了关闭浏览器。因此,onunload 事件不会触发,我又回到了丢失最后一个数据的状态。
我的问题是,当以这种方式动态加载内容时,是否有推荐的方法来确定一个人是否正在离开应用程序的“部分”?
我可以想出一个我认为的解决方案,它涉及全局变量和跟踪当前查看的页面,但我想我会检查是否有更优雅的解决方案,或者我可以在我的设计中做出改变,这将使这项工作。
一如既往地提前感谢!