Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- bitpork: 2025, zárás
- Meggyi001: Kórházi ellátás: kuka vagy finom?
- sh4d0w: Kalózkodás. Kalózkodás?
- weiss: Lakodalom van a mi utcánkban...
- eBay-es kütyük kis pénzért
- Luck Dragon: Asszociációs játék. :)
- Meggyi001: Hasznos helyek és tippek Párizsban, amiket jó eséllyel keresni is fogsz...
- GoodSpeed: Kell-e manapság egérpad vagy sem?
-
LOGOUT
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
dqdb
nagyúr
válasz
Sk8erPeter
#5505
üzenetére
Akkor íme egy Chrome/Opera extension kettőtök kutatása alapján egy kicsit kulturáltabb injektálási módszerrel.
manifest.json
{
"content_scripts":
[
{
"matches": [ "http://mno.hu/*", "https://mno.hu/*" ],
"js": [ "content.js" ],
"run_at": "document_start"
}
],
"web_accessible_resources":
[
"patch.js"
],
"manifest_version": 2,
"name": "setTimeout patch",
"version": "1.0.0"
}patch.js
Window.prototype._setTimeout = Window.prototype.setTimeout;
Window.prototype.setTimeout = function(func, delay) {
if (func.toString().indexOf("reloadBlocker") !== -1)
console.log('blocked setInterval', delay);
else
Window.prototype._setTimeout.apply(this, arguments);
};content.js
try {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.responseText) {
var patch = document.createElement("script");
patch.type = "text/javascript";
patch.innerText = xhr.responseText;
(document.head || document.documentElement).appendChild(patch);
}
};
xhr.open("GET", chrome.extension.getURL("patch.js"), true);
xhr.send(null);
}
catch (ex) {
console.log(ex);
}Vagy Firefox alá Greasemonkey scriptként:
// ==UserScript==
// @name setTimeout patch
// @namespace mno.hu
// @include http://mno.hu/*
// @include https://mno.hu/*
// @version 1
// @run-at document-start
// @grant none
// ==/UserScript==
window._setTimeout = window.setTimeout;
window.setTimeout = function(func, delay) {
if (func.toString().indexOf("reloadBlocker") !== -1)
console.log('blocked setInterval', delay);
else
window._setTimeout.apply(window, arguments);
};Érdekes módon itt csak a window példányt tudtam manipulálni, és abban lecserélni a metódust, magát a Window osztályt nem, hogy a prototípusban cserélgessek.
Természetesen nem vártam ki a 20 percet, a naplóba írt üzenettel teszteltem a kódot.
-
cocka
veterán
válasz
Sk8erPeter
#5505
üzenetére
Jajj de ez már ilyen jquerys borzalom, amiből még annyit se értek.
Igazából nem azért nem értem, mert nem tudnám megérteni, hanem mert nem ismerem a függvényeket. -
Karma
félisten
válasz
Sk8erPeter
#5505
üzenetére
Találtam egy rövidebb verziót.
Ez a blokk átverhető a window.history.pushState-tel:if(document.location.href.match(/hirtv_kesleltetett/i) || document.location.href.match(/hirtv_live/i)) {
reloadBlocker = true;
}Például így: window.history.pushState({}, null, "hirtv_live").
Egy kicsit fejre áll tőle a böngésző, de a feltétel biztosan igaz lesz tőle

Új hozzászólás Aktív témák
- ASUS Zenbook UX425EA
- újszerű iPhone 16 Pro 128GB black titanium fekete titán független Apple 1 év garancia
- Olcsó AM4 mehet! GIGABYTE A520M DS3H V2 alaplap Ingyen Fox az árban!
- Google Pixel 10 Pro 256GB, fekete + Pixel Watch 4 45mm LTE + Ajándék: Google Pixel Buds Pro 2
- -ÚJ,2 ÉV GAR- DDR5 GAMER PC: RYZEN 7 8700F/9700X/9800X3D +RX 6600/6700XT +16-64GB DDR5! SZÁMLA!
- Telefon felváráslás!! Xiaomi 13T, Xiaomi 13T Pro, Xiaomi 14T, Xiaomi 14T Pro
- iKing.Hu-Nothing Phone 3a Pro Grey Glyph stílus, 3 optikai zoom 12/256 GB -3 hónap garancia
- Shining3D EinScan Pro 2X 3D szkenner
- REFURBISHED és ÚJ - Lenovo ThinkPad Ultra Docking Station (40AJ)
- Telefon felvásárlás!! Samsung Galaxy A22/Samsung Galaxy A23/Samsung Galaxy A25/Samsung Galaxy A05s
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő
Igazából nem azért nem értem, mert nem tudnám megérteni, hanem mert nem ismerem a függvényeket.

