gpt4 book ai didi

javascript - Younow onLoad(与greatmonkey)

转载 作者:行者123 更新时间:2023-12-03 04:32:54 25 4
gpt4 key购买 nike

加载 younow 网站时,消息框“开始”会弹出两次。 -我该如何解决这个问题?

// ==UserScript==
// @name test
// @include https://www.younow.com/*
// @version 1
// @grant none
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
// ==/UserScript==
$(document).ready(function() {
alert("Start");
});

最佳答案

警报在此网站上以这种方式运行,可能是因为调用后重新加载,但加上前缀对我来说没问题。

$(document).ready(function() { 
$('body').prepend("toto"); // your code here
});

而且你不需要使用ready函数,greasmonkey会在正确的时间启动你的脚本。

但问题是:

  1. 我想您想在加载所有 ajax 元素时执行您的操作。所以最好的方法就是观察 dom。
  2. 由于网站在点击时使用 AJAX 请求更改当前页面,并且 hashchange 事件不起作用,因此我使用了一些技巧来监听任何页面更改。

通过此脚本,您可以使用警报功能:

// ==UserScript==
// @name test
// @include https://www.younow.com/*
// @version 1
// @grant none
// @require https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js
// ==/UserScript==

var observer = null;
initObserver();

function initObserver()
{
observer = new MutationObserver(onMutation);
observer.observe(document,
{
childList: true, // report added/removed nodes
subtree: true, // observe any descendant elements
});
}

$(window).on('hashchange', function(e)
{
initObserver();
});

intervalMutation = setInterval(onMutation.bind(null, null), 1000);

function locationObserver()
{
var oldLocation = location.href;
setInterval(function() {
if(location.href != oldLocation) {
onMutation(null);
oldLocation = location.href
}
}, 1000); // check every second
}
locationObserver();

function onMutation(mutations)
{
// Check if this class exits:
if($('.trending-now').length ||
$('.ynicon ynicon-chat').length ||
$('.trending_title').length ||
$('.trending-tags-list').length)
{
// Disconnect the observer:
observer.disconnect();
// Clear the interval :
clearInterval(intervalMutation);
// Call your code:
pageReady();
}
}

function pageReady()
{
// your code here:
alert('start');
}

关于javascript - Younow onLoad(与greatmonkey),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43414867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com