I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
function showPopup() { var w = {closed:true}; w = window.open('test.html','di'); if(w.closed) alert('blocker installeret'); else alert('ingen blocker installeret'); }
window identificerer det aktuelle vindue, men hvis det er popupvinduet, så kommer du jo aldrig til denne kode, for vinduet åbner ikke. Du er nød til at lave checket der hvor du åbner popupvinduet, altså udenfor vinduet selv - eller misforstår jeg hvor du vil hen ad...?
Hvis du holder fast i referencen til det popupvindue som du åbner, vil jeg jo mene at du kan checke på w.closed (for nu at tage udgangspunkt i de variabelnavne som jeg selv introducerede). Det kan du så evt. gør med setInterval, nogenlunde således:
Det kan du desværre ikke (iflg min viden), med mindre du vil risikere at der åbnes et nyt vindue, hvis det ikke findes. I det tilfælde kan du bare prøve at åbne et popupvindue med en tom url med navnet kurt (altså window.open('','kurt');) og så checke om vinduet er åben og om window.location.href er den tomme url.
Det vil dog som sagt producere et tomt vindue hvis det ikke er åben i forvejen og er sjældent en ønskværdig sideeffekt.
Det er stort set det den kode jeg lavede i mit post fra 23/02-2006 14:59:59 gør, du skal bare flytte setInterval ned i den funktion der åbner popup-vinduet i stedet for at starte den sammen med siden. Det hele skal bare ligge i den side som åbner popupvinduet:
var popupWin = {closed:true};
function checkPopup() { if(popupWin.closed) { // så er vinduet lukket } else { // så er vinduet åben } }
function showPopup() { popupWin = window.open('test.html','di'); setInterval("checkPopup()",3000); }
function checkPopup(){ try{ window.open("test.html","popWin"); alert("window.open blev ikke fanget af en popupstopper !-)"); }catch(e){ alert("window.open _blev_ fanget af en popupstopper !-)"); } }
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.