 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
20.01.2006, 19:16
|
#1
|
|
TP-Veteran
Registriert seit: Feb 2004
Ort: Stuttgart
|
Prüfen ob JS-Funktion vorhanden ist
Hi,
wie kann ich prüfen ob eine JavaScript-Funktion vorhanden ist?
also: in eine Seite (index.php) wird einmal eine JS-Funktion includet und beim nächsten seitenaufruf nicht mehr...
jetzt hab ich aber unten auf der seite ein JS das diese JS-Funktion ausführen soll aber nur, wenn diese vorhanden ist, sonst kommt im IE eine Fehlermeldung
Ich hoffe ihr versteht mich und könnt mir helfen 
__________________
Gruß
Dome
__________________
Um mal auf das Renomee-System aufmerksam zu machen: Klick TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)
|
|
|
20.01.2006, 20:43
|
#2
|
|
TP-Moderator
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
|
Hi !
Das kannst du z.B. so bewerkstelligen:
Code:
<script ...>
if (typeof funktionsname == 'function')
funktionsname();
</script>
Gruss
Jan
|
|
|
20.01.2006, 21:49
|
#3
|
|
TP-Veteran
Registriert seit: Feb 2004
Ort: Stuttgart
|
bessten Dank!
[edit: Habs getestet und muss sagen: Es funzt! Also nochmal THX!  ]
__________________
Gruß
Dome
__________________
Um mal auf das Renomee-System aufmerksam zu machen: Klick TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)
Geändert von Dome (20.01.2006 um 21:53 Uhr).
|
|
|
21.01.2006, 13:52
|
#4
|
|
TP-Moderator
Registriert seit: Aug 2004
Ort: Homburg / Saarland
|
Wenn Du ganz "brutal" sein willst, kannst Du die Fehlermeldung auch unterdrücken:
Code:
<script ...>
try{
funktionsname();
}
catch(e)
{
// Hier kannst Du, mußt aber nicht, Befehle eingeben, die ausgeführt werden, wenn's "knallt" ;-)
};
</script>
|
|
|
21.01.2006, 18:40
|
#5
|
|
TP-Veteran
Registriert seit: Feb 2004
Ort: Stuttgart
|
oh perfekt, danke!
[edit: äh wie kann man denn eine laufende Funktion unterbrechen? THX ]
__________________
Gruß
Dome
__________________
Um mal auf das Renomee-System aufmerksam zu machen: Klick TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)
Geändert von Dome (21.01.2006 um 20:12 Uhr).
|
|
|
21.01.2006, 20:45
|
#6
|
|
TP-Moderator
Registriert seit: Aug 2004
Ort: Homburg / Saarland
|
Meines Wissens kann man eine "externe" Funktion nicht unterbrechen. Wenn es Deine eigene ist, könntest Du Dir ein Flag "isRunning" einbauen, daß Du innerhalb einer While-Schleife abfrägst. Wenn Du jetzt von außen diesen Wert auf "false" setzt, könntest Du die Funktion abbrechen. Das ganze kommt aber darauf an, was Du eigentlich in der Funktion machst.
|
|
|
22.01.2006, 02:14
|
#7
|
|
TP-Veteran
Registriert seit: Feb 2004
Ort: Stuttgart
|
also es wird ein Javascript per
HTML-Code:
<script language="javascript" scr="blablabla/js.js"></script>
"includet".
In dieser Form:
HTML-Code:
<script language="javascript">
function get_reference(id) {
if( document.getElementById ) { // dom compat
return document.getElementById(id);
}
if( document.all ) { // ie4
return document.all[id];
}
if( document.layers ) { // ns layers
return document.layers[id];
}
if( document[id] ) { // ns alt (webtv)
return document[id];
}
return false;
}
function swap_img(id,url){
img=get_reference(id);
img.setAttribute("src",url);
return false;
}
function move_layer() {
var pixel = document.childNodes ? 'px' : 0;
layer_ref=get_reference('f967288');
if( layer_ref.style ) { style_ref = layer_ref.style; }
if(style_ref.left != ('10'+pixel)) {
style_ref.left = ( parseInt(style_ref.left) + 180 ) + pixel;
setTimeout("move_layer()", 50);
}
}
function show_layer() {
layer_ref=get_reference('f967288');
if( layer_ref.style ) { style_ref = layer_ref.style; }
if( !layer_ref ) {
return false; // nix :(
}
if( layer_ref.style ) { // dom compat
layer_ref.style.visibility = 'visible';
} else {
if( layer_ref.visibility ) { // ns
layer_ref.visibility = 'show';
} else {
return false; // schon wieder nix :(
}
}
move_layer();
return true;
}
function hide_layer(action) {
var pixel = document.childNodes ? 'px' : 0;
layer_ref=get_reference('f967288');
swap_img('adframe','http://www.funpic.de/media/adjsc4.php?bid=36338390');
//adframe.location.replace = 'http://www.funpic.de/media/adjsc.php?bid=36338390';
if(action==1) {
open("http://partners.webmasterplan.com/click.asp?ref=106897&site=338&type=b1&subid=1501", "funpic_layer", "resizable=yes, scrollbars=yes, menubar=yes, toolbar=yes, status=yes, location=yes,width=800");
}
if( layer_ref.style ) { style_ref = layer_ref.style; }
layer_ref.style.visibility = 'hidden';
if( !layer_ref ) {
return false; // nix :(
}
style_ref.left = -1000 + pixel;
if( layer_ref.style ) { // dom compat
layer_ref.style.visibility = 'hidden';
} else {
if( layer_ref.visibility ) { // ns
layer_ref.visibility = 'hide';
} else {
return false; // schon wieder nix :(
}
}
}
function init_layer()
{
var pixel = document.childNodes ? 'px' : 0;
layer_ref=get_reference('f967288');
if( layer_ref.style ) { style_ref = layer_ref.style; }
style_ref.left = -1070 + pixel;
setTimeout("show_layer()", 8000);
return false;
}
document.open();
document.write('<div id="f967288" class="layer_main" style="visibility: hidden;"><div id="top_bar"><span id="top_left" style="float: left;"><img id="top_icon" src="http://img2.funpic.de/top_icon-down.png" alt="home" /></span><span id="top_middle" style="float:left;"><a onMouseOver="swap_img(\'top_icon\',\'http://img2.funpic.de/top_icon-over.png\');" onMouseOut="swap_img(\'top_icon\',\'http://img2.funpic.de/top_icon-down.png\');" style="text-decoration:none; color:#435567;" href="#" onClick="hide_layer(1); return false;"><img src="http://img2.funpic.de/top_main-bg_o2.png" border="0"></a></span><span id="top_right" style="float: right;"><a href="#" onClick="hide_layer(1); return false;"><img style="float: none;" id="neuerframe_img" src="http://img2.funpic.de/button_neuerframe-down.png" border="0" alt="" onMouseOver="swap_img(\'neuerframe_img\',\'http://img2.funpic.de/button_neuerframe-over.png\');" onMouseOut="swap_img(\'neuerframe_img\',\'http://img2.funpic.de/button_neuerframe-down.png\');" /></a><a href="#" onClick="hide_layer(0); return false;"><img style="float: none;" id="exit_img" src="http://img2.funpic.de/button_exit-down.png" border="0" alt="" onMouseOver="swap_img(\'exit_img\',\'http://img2.funpic.de/button_exit-over.png\');" onMouseOut="swap_img(\'exit_img\',\'http://img2.funpic.de/button_exit-down.png\');" /></a></span></div><iframe frameborder="0" id="adframe" name="adframe" src="http://partners.webmasterplan.com/click.asp?ref=106897&site=338&type=b1&subid=1501"></iframe><div id="down_bar"><span id="down_left" style="float:left;"><img id="bottom_icon" src="http://img2.funpic.de/bottom_icon-down.png" alt="" /><a href="http://www.funpic.de/go/layer" target="_blank" onMouseOver="swap_img(\'bottom_icon\',\'http://img2.funpic.de/bottom_icon-over.png\');" onMouseOut="swap_img(\'bottom_icon\',\'http://img2.funpic.de/bottom_icon-down.png\');"><img border="0" src="http://img2.funpic.de/bottom_main-bg.png" alt="" /></a></span><span id="down_right" style="float: right;"><a href="#" onClick="hide_layer(1); return false;"><img border=0 id="neuesfenster_img" src="http://img2.funpic.de/button_neuesfenster-down.png" onmouseover="swap_img(\'neuesfenster_img\',\'http://img2.funpic.de/button_neuesfenster-over.png\');" onMouseOut="swap_img(\'neuesfenster_img\',\'http://img2.funpic.de/button_neuesfenster-down.png\');" alt="" /></a></span></div></div><link href="http://img2.funpic.de/layer.css" rel="stylesheet" type="text/css" />');
document.close();
init_layer();
</script>
ich möchte jetzt diesen Werbelayer unsichtbar machen, so 1 Sekunde nachdem er erscheint...
wenn ich das mit
HTML-Code:
<script language="javascript">
try
{
setTimeout("hide_layer(0)", 9000);
}
catch(e)
{
document.writeln('Funktion nicht da!');
};
</script>
testen will, fliegt manchmal im IE der Layer nach rechts und der Scrollbalken wird immer größer 
Ich möchte also, dass die werbung nur ganz kurz oder garnicht sichtbar wird...
wenn ich also die funtkion unterbrechen könnte, die den Layer fliegen lässt.......
__________________
Gruß
Dome
__________________
Um mal auf das Renomee-System aufmerksam zu machen: Klick TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)
|
|
|
22.01.2006, 02:18
|
#8
|
|
TP-Special Mod
Registriert seit: Feb 2005
Ort: Haan / NRW
|
Du willst also die Werbung von funpic umgehen
schon mal probiert, das div im css unsichtbar zu machen
#div.werbung {display:none !important;}
?
|
|
|
22.01.2006, 02:19
|
#9
|
|
TP-Veteran
Registriert seit: Feb 2004
Ort: Stuttgart
|
erraten 
mom ich probiers kurz....
[edit: ich bekomms leider nicht hin  wie genau muss ich das machen? THX schonmal! ]
__________________
Gruß
Dome
__________________
Um mal auf das Renomee-System aufmerksam zu machen: Klick TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)
Geändert von Dome (22.01.2006 um 02:26 Uhr).
|
|
|
22.01.2006, 02:32
|
#10
|
|
TP-Special Mod
Registriert seit: Feb 2005
Ort: Haan / NRW
|
Das div hat doch irgendsoeine ID ('f967288')
versuch mal
#f967288 {display:none !important;}
aber es kann sein das das aufgrund der js-Routine nicht hinhaut.
Schnapp Dir die letzte hier gepostete FF-Extension und inspiziere alles 
|
|
|
22.01.2006, 11:09
|
#11
|
|
TP-Veteran
Registriert seit: Feb 2004
Ort: Stuttgart
|
also moin erstmal!
ich hab das jetzt mal so versucht:
HTML-Code:
<script language="javascript">
function layer_hidden() {
try
{
layer_ref.style.visibility = 'hidden';
layer_ref.visibility = 'hide';
}
catch(e)
{
};
}
setTimeout("layer_hidden()", 15000);
</script>
doch im IE bekomm ich ne fehlermeldung... ich glaub aber die betrifft den Code hier nicht, irgendwas dass die seite, die im I-Frame liegt, den Fokus nicht einhalten kann....
[edit: und dort wo ichs einsetzten wollte funtkioniert es nicht  (beim Battlebay) ]
__________________
Gruß
Dome
__________________
Um mal auf das Renomee-System aufmerksam zu machen: Klick TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)
Geändert von Dome (22.01.2006 um 12:42 Uhr).
|
|
|
12.11.2006, 15:06
|
#12
|
|
TP-Newbie
Registriert seit: Nov 2006
|
Hi Leute
Ich hab eigentlich bisher nicht viel Ahnung von Javascript und dieser Funktion um das Layer zu entfernen, aber ich würde wirklich gerne wissen, wie man das JavaScript Popup (das neue bei funpic.de und jetzt auch funpic.org) entfernen kann. ich hab die Funktionen hier z.T. schon in den Wrappers in meinem Invision Power Board ausprobiert, aber dabei fliegt nur das Layer Popup unendlich weit nach rechts, es wird nicht komplett ausgeblendet.
auf nem anderen Board stand, dass das hier funktioniert, aber es bewirkt auch nur diese Verschiebung nach rechts, sonst nichts...
<script>
hide_layer(0);
</script>
wäre sehr nett, wenn jemand dafür die Lösung hätte, es komplett zu "verdrängen" oder wie auch immer!
Thanks,
spidey
Geändert von spiderman2000 (12.11.2006 um 15:10 Uhr).
|
|
|
12.11.2006, 15:23
|
#13
|
|
TP-Veteran
Registriert seit: Feb 2004
Ort: Stuttgart
|
Hmm wie du siehst habe ich es auch schon sehr lange versucht, muss dir leider sagen ICH habs nicht hinbekommen...
Die einzige Möglichkeit für mich war, einen eigenen Server zu mieten, da ich auch mit dem Funktionsumfang von Freehosten nicht zu frieden war 
__________________
Gruß
Dome
__________________
Um mal auf das Renomee-System aufmerksam zu machen: Klick TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:42 Uhr.
|
 |