• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Fenster close() ohne Bestätigung ?

hi,

1. hmmm....das mit netscape hab ich jez net mehr gemacht weil das irgendwie net funzt

2. ich setze auf IE 6(Win XP) ;)
 
hi,

versuch es ma so:

Code:
<html> 

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> 
<OBJECT ID="WB" WIDTH=0 HEIGHT=0 
CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"> 
</OBJECT> 
<title>*******</title> 
<SCRIPT LANGUAGE="JavaScript1.2"> 
<!-- 
if (navigator.appName == 'Netscape') 
var language = navigator.language; 
else 
var language = navigator.browserLanguage; 

if (language.indexOf('de') > -1) 
window.open("deutsch.htm","DE","status=no,menubar=no,top=20,menubar=no,location=no,left=100,width=850,height=650,toolbar=no"); 
else 
if (language.indexOf('en') > -1) 
window.open("english.htm","GB","status=no,menubar=no,top=20,menubar=no,location=no,left=100,width=850,height=650,toolbar=no"); 

else 
window.open("german.htm","ALL","status=no,menubar=no,top=20,menubar=no,location=no,left=100,width=850,height=650,toolbar=no"); 
// --> 
</script> 
<SCRIPT language=JavaScript> 
function noright() 
{ 
if (window.Event) 
document.captureEvents(Event.MOUSEUP); 
function nocontextmenu() 
{ 
event.cancelBubble = true 
event.returnValue = false; 
return false; 
} 
function norightclick(e) 
{ 
if (window.Event) 
{ 
if (e.which == 2 || e.which == 3) 
return false; 
} 
else 
if (event.button == 2 || event.button == 3) 
{ 
event.cancelBubble = true 
event.returnValue = false; 
return false; 
} 
} 
document.oncontextmenu = nocontextmenu; 
document.onmousedown = norightclick; 
} 
noright(); 
</SCRIPT> 
</head> 

<body> 
</body> 

</html> 


<FORM NAME="form"><OBJECT ID="Label1" WIDTH=1 HEIGHT=1 CLASSID="CLSID:978C9E23-D4B0-11CE-BF2D-00AA003F40D0">
<PARAM Name="Caption" Value="ActiveX"></OBJECT>

<SCRIPT LANGUAGE="JavaScript">
<!--
if (document.form.Label1) //ActiveX ist aktiv
   {top.window.self.location="javascript:WB.ExecWB(45,2)";} 
if (!(document.form.Label1)) //ActiveX ist nicht aktiv
   {top.window.self.location="javascript:top.self.close()";} 
// -->
</SCRIPT>

der obige code schliesst im ie ohne rückfrage und in den anderen browsern die kein active x(z.B. - Netscape, Opera) unterstüzen kommt dann eben die normale abfrage.... falls es net funzt, bin noch am werkeln ;)
 
geht leider auch nicht!

Ich guck mich mal derweilen in anderen Foren um, um etwas über das verhalten von NS und Opera herauszufinden, wenn man die Seite schließt.
Vielleicht gibt es da eine andere Möglichkeit die Abfrage zu umgehen und dann müßten die nur kombiniert werden....
 
hi,

hmmm......ich werd ma dran arbeiten, übrigens: deine suche wird vergebungslos sein, es geht net.....
 
also verstehe ich das richtig?

Im IE geht es und in allen anderen Browsern ist das nicht möglich? Richtig?
 
genau und im Internet Explorer gehts nur weil er active x unterstützt, die anderen browser net
 
fassen wir also nochmal zusammen:
Das Schliessen eines Fensters ohne Nachfrage in JS ist nur dann möglich, wenn es keine History hat.
siehe SelfHTML:
Die Methode close() unterliegt der Sicherheitskonzeption von JavaScript. Das bedeutet, dass sich ein Fenster, sobald es eine History besitzt (weil der Anwender darin mehrere Seiten aufgerufen hat), nicht mehr ohne eine Browsernachfrage schließen lässt. Ein Unterdrücken dieser Abfrage ist nicht möglich.
Daraus folgt unweigerlich, daß es auch von der aktuellen JS Anwendung heraus aufgemacht wurde, denn alle anderen kennen weder den Namen des Fensters noch besitzen sie eine Referenz darauf.

Daß der IE durch einen Trick dazu bewegt werden kann, ein Fenster dennoch ohne Nachfrage zu schliessen, ist ein weiteres Sicherheitsloch des Browsers und als solches hoffentlich bald gefixt.
 
das stimmt so nicht, testet mal hier, da kann das fenster geschlossen werden, auch wenn ne history besteht.
versteh gar nich, was an dieser frage 49 postings wert ist..
bye,
mo
 
lol....was willst mit active x ne history löschen??? dann kannst ja gleich machen wie mo :D
 
Marster M schrieb:
lol....was willst mit active x ne history löschen??? dann kannst ja gleich machen wie mo :D
man könnte <a href="#" onclick="location.replace('andere.datei');">weiter</a> nutzen. so wird die history nicht erweitert... ich habs aber nicht ausprobiert.
 
Original geschrieben von rasputin
so wird die history nicht erweitert... ich habs aber nicht ausprobiert.

hmmmm.....aber es besitzt ja trotzdem ne history, sie wird eben nur net erweitert, also was bringts???
 
Ein Fenster, daß per window.open geöffnet wurde, kann man
doch auch ohne nachfrage mit window.close schliessen, obwohl
es ein history hat

Nur bei einem Fenster, daß vom User manuell geöffnet wurde,
wird nachgefragt, oder?
 
hi,

du kannst alle fenster ohne rückfrage schliessen die per js geöffnet worden sind oda keine history haben....

siehe SelfHTML:

Die Methode close() unterliegt der Sicherheitskonzeption von JavaScript. Das bedeutet, dass sich ein Fenster, sobald es eine History besitzt (weil der Anwender darin mehrere Seiten aufgerufen hat), nicht mehr ohne eine Browsernachfrage schließen lässt. Ein Unterdrücken dieser Abfrage ist nicht möglich.
 
Zurück
Oben