HighDots Forums  

Re: Imputelement ---statisch ersetzen

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss Re: Imputelement ---statisch ersetzen in the Javascript (German) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Martin Honnen
 
Posts: n/a

Default Re: Imputelement ---statisch ersetzen - 04-11-2007 , 11:40 AM






Anita Maier wrote:

Quote:
script
function startFlash() {
var flvPath = document.getElementById('flvPath').value;
basePath = flvPath.match(/(.*)[\/|\\].*/)[1];
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath", basePath+
"/slides.xml");

}
/script

input id="flvPath" type="file" onChange="startFlash();"/><br/

Quote:
Und nun mein Problem
Über das Input element gibt wählt man das entsprechende Videofile aus.
Da aber nun mein Video (ebenso wie die Grafiken und die XMLdateien) immer
identisch heißt und sich nur die Zeitenfolge (innerhalb) des XMLfiles
ändert, möchte ich den Aufruf des Videos durch die HTML-Seite statisch
machen - also das Inputelement entsprechend ersetzen.
Packe den Pfad, den du sonst mittels des <input type="file"> auswaehlst,
in eine Variable, also etwa

function startFlash() {
var flvPath = 'C:\\dir\\subdir\\file.suf';
basePath = flvPath.match(/(.*)[\/|\\].*/)[1];
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath", basePath+
"/slides.xml");

dann rufe die Funktion als onload-Handler auf

window.onload = startFlash;


--

Martin Honnen
http://JavaScript.FAQTs.com/


Reply With Quote
  #2  
Old   
Anita Maier
 
Posts: n/a

Default Re: Imputelement ---statisch ersetzen - 04-12-2007 , 04:41 AM






Hallo Martin,

Vielen Dank, aber noch ein kleine Frage:

"Martin Honnen" <mahotrash (AT) yahoo (DOT) de> schrieb im Newsbeitrag
news:461d0f91$0$6404$9b4e6d93 (AT) newsspool2 (DOT) arcor-online.net...

Quote:
Packe den Pfad, den du sonst mittels des <input type="file"> auswaehlst,
in eine Variable, also etwa

function startFlash() {
var flvPath = 'C:\\dir\\subdir\\file.suf';
basePath = flvPath.match(/(.*)[\/|\\].*/)[1];
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath", basePath+
"/slides.xml");

dann rufe die Funktion als onload-Handler auf

window.onload = startFlash;
--
Also das ' window.onload = startFlash; ' schreibe ich in den
Head-Bereich, richtig?
Und/ oder an welche Position?

viele Grüße
Anita




Reply With Quote
  #3  
Old   
Martin Honnen
 
Posts: n/a

Default Re: Imputelement ---statisch ersetzen - 04-12-2007 , 06:46 AM



Anita Maier wrote:

Quote:
Also das ' window.onload = startFlash; ' schreibe ich in den
Head-Bereich, richtig?
Einfach innerhalb des <script>-Elementes einfuegen.


--

Martin Honnen
http://JavaScript.FAQTs.com/


Reply With Quote
  #4  
Old   
Anita Maier
 
Posts: n/a

Default Re: Imputelement ---statisch ersetzen - 04-12-2007 , 07:42 AM



Hallo Martin,

"Martin Honnen" <mahotrash (AT) yahoo (DOT) de> schrieb im Newsbeitrag
news:461e1c09$0$20282$9b4e6d93 (AT) newsspool3 (DOT) arcor-online.net...
Quote:
Anita Maier wrote:

Also das ' window.onload = startFlash; ' schreibe ich in den
Head-Bereich, richtig?

Einfach innerhalb des <script>-Elementes einfuegen.
Vielen Dank das hat funktioniert!
Wie kann ich den Pfad relativ (zB bei späterer Verwendung auf einer CD)
anlegen?

Ursprünglich:
var flvPath = 'C:\\dir\\subdir\\file.suf';

Bisher gestet, allerdings nicht funktionierend
var flvPath = 'file.suf';
var flvPath = '\\file.suf';
var flvPath = '.\\file.suf';
var flvPath = '..\\file.suf';

Wäre super nett, du würdest mir nochmal helfen, da meine Englischkenntnisse
doch ziemlich begrenzt sind um mich auf der Suche nach dieser konkreten
Frage durch deinen Link zu klicken...
Quote:
http://JavaScript.FAQTs.com/
Obgleich ich sicher bin, dass ich mich demnächst mal häufiger dort aufhalten
werden....

Gruß
Anita




Reply With Quote
  #5  
Old   
Anita Maier
 
Posts: n/a

Default Re: Imputelement ---statisch ersetzen - 04-12-2007 , 08:49 AM




"Anita Maier" <0815judoka (AT) gmx (DOT) de> schrieb im Newsbeitrag
news:evl9en$ko4$1 (AT) tamarack (DOT) fernuni-hagen.de...
Quote:
Hallo Martin,

"Martin Honnen" <mahotrash (AT) yahoo (DOT) de> schrieb im Newsbeitrag
news:461e1c09$0$20282$9b4e6d93 (AT) newsspool3 (DOT) arcor-online.net...
Anita Maier wrote:

Einfach innerhalb des <script>-Elementes einfuegen.

Vielen Dank das hat funktioniert!
Wie kann ich den Pfad relativ (zB bei späterer Verwendung auf einer CD)
anlegen?

Ursprünglich:
var flvPath = 'C:\\dir\\subdir\\file.suf';

Bisher gestet, allerdings nicht funktionierend
var flvPath = 'file.suf';
var flvPath = '\\file.suf';
var flvPath = '.\\file.suf';
var flvPath = '..\\file.suf';

Wäre super nett, du würdest mir nochmal helfen, ...

OK selfHTML ... hat mir gezeigt, dass das referenzieren eigentlich genauso
wie in HTML funktioniert, aber da ich die Doppelbackslashes bei der
Variablenfestelegung habe, kann das doch nicht funktionieren?!

Ebenfalls (erfolglos) versucht habe ich alle Variablen zu setzen:

<SCRIPT>
function startFlash() {
var flvPath = 'fast.flv';
var basePath = './';
var xmlPath = 'slides.xml';
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath", xmlPath);

}
window.onload = startFlash;
</SCRIPT>


Wo liegt der Fehler bzw wie kriegt man es ans Laufen?


Quote:
Gruß
Anita aka Ingrid




Reply With Quote
  #6  
Old   
Martin Honnen
 
Posts: n/a

Default Re: Imputelement ---statisch ersetzen - 04-12-2007 , 11:24 AM



Anita Maier wrote:

Quote:
OK selfHTML ... hat mir gezeigt, dass das referenzieren eigentlich genauso
wie in HTML funktioniert, aber da ich die Doppelbackslashes bei der
Variablenfestelegung habe, kann das doch nicht funktionieren?!
Innerhalb eines Zeichenkettenliterals in JavaScript ist der backslash \
ein Escapezeichen, deshalb muss es verdoppelt werden, um das Zeichen
selbst zu verwenden. Deshalb
var flvPath = 'C:\\dir\\subdir\\file.suf';

Quote:
Ebenfalls (erfolglos) versucht habe ich alle Variablen zu setzen:

SCRIPT
function startFlash() {
var flvPath = 'fast.flv';
var basePath = './';
var xmlPath = 'slides.xml';
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath", xmlPath);
Welche Pfade dieser Flash-Film haben will, musst du mal den Autoren des
Filmes fragen, oder halt, so es dazu eine Doku gibt, darin nachsehen.
Der urspruengliche Code nimmt den Wert des input type="file"-Elementes,
also einen vollstaendigen Pfad in der Form
'C:\\dir\\subdir\\file.suf'
setzt dann
basePath
auf
'C:\\dir\\subdir'
dann wird fuer Flash basePath auf 'C:\\dir\\subdir' gesetzt, flvPath auf
'C:\\dir\\subdir\\file.suf' und xmlPath auf 'C:\\dir\\subdir/slides.xml'.

So du nur relative Pfade verwenden willst, musst du eventuell
window.location.href verwenden und auslesen, um dann daraus einen
vollstaendigen Pfad zu basteln.
--

Martin Honnen
http://JavaScript.FAQTs.com/


Reply With Quote
  #7  
Old   
Anita Maier
 
Posts: n/a

Default Re: Imputelement ---statisch ersetzen - 04-13-2007 , 03:58 AM



Hallo Martin und alle die es interessiert!

"Martin Honnen" <mahotrash (AT) yahoo (DOT) de> schrieb im Newsbeitrag
news:461e5d30$0$10182$9b4e6d93 (AT) newsspool4 (DOT) arcor-online.net...
Quote:
Innerhalb eines Zeichenkettenliterals in JavaScript ist der backslash \
ein Escapezeichen, deshalb muss es verdoppelt werden, um das Zeichen
selbst zu verwenden. Deshalb
var flvPath = 'C:\\dir\\subdir\\file.suf';
Danke für Info - war mir als absoluter Newbie - bisher nicht bekannt!

Quote:
So du nur relative Pfade verwenden willst, musst du eventuell
window.location.href verwenden und auslesen, um dann daraus einen
vollstaendigen Pfad zu basteln.
---

Mein script sieht nun wie folgt aus
<script type="text/javascript">

function StartFlash ()
{
var Aussage = window.location.href
var Suche = Aussage.lastIndexOf("/");
var LastExtrakt = Aussage.slice(0, Suche);
var TeilZiel = LastExtrakt.concat("/fast.flv");
var Länge = TeilZiel.length
var flvPath = TeilZiel.slice(8, Länge);
basePath = flvPath.match(/(.*)[\/|\\].*/)[1];
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath",
basePath+"/slides.xml");
}
window.onload = StartFlash;
</script>

Lieben Dank für deine Hilfe!




Reply With Quote
  #8  
Old   
Anita Maier
 
Posts: n/a

Default Fehler im Script?! was: Imputelement ---statisch ersetzen - 04-16-2007 , 02:52 AM




"Anita Maier" <0815judoka (AT) gmx (DOT) de> schrieb im Newsbeitrag
news:evngn6$ia5$1 (AT) tamarack (DOT) fernuni-hagen.de...

Quote:
Mein script sieht nun wie folgt aus
script type="text/javascript"

function StartFlash ()
{
var Aussage = window.location.href
var Suche = Aussage.lastIndexOf("/");
var LastExtrakt = Aussage.slice(0, Suche);
var TeilZiel = LastExtrakt.concat("/fast.flv");
var Länge = TeilZiel.length
var flvPath = TeilZiel.slice(8, Länge);
basePath = flvPath.match(/(.*)[\/|\\].*/)[1];
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath",
basePath+"/slides.xml");
}
window.onload = StartFlash;
/script
---

Unglücklicherweise funktioniert das Script nur auf dem Rechner auf dem ich
es erstellt habe.
Hat irgenjemand eine Ahnung woran das liegen könnte?




Reply With Quote
  #9  
Old   
Martin Honnen
 
Posts: n/a

Default Re: Fehler im Script?! was: Imputelement ---statisch ersetzen - 04-16-2007 , 10:21 AM



Anita Maier wrote:

Quote:
Unglücklicherweise funktioniert das Script nur auf dem Rechner auf dem ich
es erstellt habe.
Hat irgenjemand eine Ahnung woran das liegen könnte?
Gibt es Fehlermeldungen? <http://www.glasgoogle.de>




--

Martin Honnen
http://JavaScript.FAQTs.com/


Reply With Quote
  #10  
Old   
Anita Maier
 
Posts: n/a

Default Re: Fehler im Script?! was: Imputelement ---statisch ersetzen - 04-17-2007 , 03:39 AM



Hallo Martin,

"Martin Honnen" <mahotrash (AT) yahoo (DOT) de> schrieb im Newsbeitrag
news:462394a2$0$10187$9b4e6d93 (AT) newsspool4 (DOT) arcor-online.net...
Quote:
Anita Maier wrote:

Unglücklicherweise funktioniert das Script nur auf dem Rechner auf dem
ich es erstellt habe.
Hat irgenjemand eine Ahnung woran das liegen könnte?

Gibt es Fehlermeldungen? <http://www.glasgoogle.de

--

Martin Honnen
---

beim normalen Aufruf wird kein Scriptfehler angezeigt

Setze ich aber zum Schluss
alert (basePath + " " + flvPath + " " +xmlPath)

Liefern die Variablen folgendes:
Aussage ---> file:/// LW:/Ordner/Datei.Endung
flvPath -----> LW:/Ordner/Datei.Endung
basePath ---> LW:/Ordner

bei xmlPath zeigt er mir undefiniert an?! - Warum
Ist dass richtig, dass hinter der Laufwerksbezeichnung nur ein Slash steht?

Wenn ich das Script wie folgt abändere,

<script type="text/javascript">
function StartFlash ()
{
var Aussage = window.location.href
var Suche = Aussage.lastIndexOf("/");
var LastExtrakt = Aussage.slice(0, Suche);
var TeilZiel = LastExtrakt.concat("/fast.flv");
var Länge = TeilZiel.length
var flvPath = TeilZiel.slice(8, Länge);

basePath = flvPath.match(/(.*)[\/|\\].*/)[1];
xmlPath = basePath.concat("/slides.xml");
document.getElementById('flash').setVariable("base Path", basePath);
document.getElementById('flash').setVariable("flvP ath", flvPath);
document.getElementById('flash').setVariable("xmlP ath", xmlPath);
alert (Aussage + " " + flvPath + " " + basePath + " " + xmlPath);
}
window.onload = StartFlash;
</script>

....findet er leider trotzdem nur auf dem Rechner auf dem ich auch codiert
habe den entsprechenden Pfad und zeigt ihn an, nicht jedoch auf anderen
Rechnern (Alert wird korrekt gezeigt, doch 'nutzt' er die Infos offenbar
nicht?)

vG
Anita





Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.