Javascript 代码检测任何页面更改? (也许通过 AJAX)

发布于 2024-10-06 04:14:49 字数 403 浏览 5 评论 0原文

我是编写 Javascript 的新手,这就是我正在做/尝试做的事情。

当页面加载(window.onload)时,我的 Javascript 代码会遍历页面中的所有表单,并将特定的 onchange 方法附加到它们。这对于互联网上的大多数网站都适用,除非页面动态更新以在页面上加载更多表单。如何检测此类事件并重新运行我的函数?

例如:

Facebook Newsfeed 有一堆与发布的所有不同状态/链接相关联的表单。我的代码遍历它们并附加监听器。但是,如果您一路向下,页面会自动更新以显示更多状态/链接/等。 (或者您单击“较早的帖子”链接)-但现在我的 javascript 代码尚未再次在全局范围内运行。

无论如何我能做到吗?

编辑:我正在编写一个浏览器扩展。

I'm new to writing Javascript, and here's what I'm doing/trying to do.

When a page loads (window.onload) my Javascript code goes through all the forms in a page and attaches a certain onchange method to them. This works fine for most websites on the internet, except when a page dynamically updates to load more forms on the page. How do I detect such an event and re-run my function?

For example:

The Facebook Newsfeed has a bunch of forms associated with all the different statuses/links posted. My code goes through them and attaches the listener. But if go you all the way down the page automatically updates to reveal more statuses/links/etc. (or you click the "Older Posts" link) - but now my javascript code has not run globally again.

Anyway I can do that?

EDIT: I am writing a browser extension.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

空城旧梦 2024-10-13 04:14:49

使用 .live()

$(document).ready(function()
{
    $(document).live("onchange",function()
    {
        // blah?
    });
});

use .live() ?

$(document).ready(function()
{
    $(document).live("onchange",function()
    {
        // blah?
    });
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文