[JavaScript] Search-Script fuer iFrames...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JavaScript] Search-Script fuer iFrames...

    Hallo Leute...

    Heute brauch ich mal eure Hilfe in Sachen Javascript. Es geht darum, das ich eine Search-Funktion in meine Seite einbauen moechte. Dazu benutze ich zur Zeit diesen Script:

    PHP-Code:
    <script type="text/javascript" language="JavaScript"
    /* 
    Find In Page Script- 
    By Mike Hall (MHall75819@aol.com) 
    */ 
    var NS4 = (document.layers); 
    var 
    IE4 = (document.all); 
    var 
    win opener//Ziel (window / opener) 
    var 0

    function 
    findInPage(str

    var 
    txtifound
    if(
    str == ""
    return 
    false
    if(
    NS4

    if(!
    win.find(str)) 

    while(
    win.find(strfalsetrue)) 

    n++; 


    else 

    n++; 

    if (
    == 0

    result('false'); 



    if(
    IE4

    txt win.document.body.createTextRange(); 
    for (
    0<= && (found txt.findText(str)) != falsei++) 

    txt.moveStart("character"1); 
    txt.moveEnd("textedit"); 

    if(
    found

    txt.moveStart("character", -1); 
    txt.findText(str); 
    txt.select(); 
    txt.scrollIntoView(); 
    document.forms[0].submitButton.value 'Weitersuchen'
    n++; 

    else 

    if (
    0

    0
    findInPage(str); 

    else 
    result('false'); 


    return 
    false

    function 
    result(res

    if(
    res == 'false'

    document.all['ergebnis'].style.zIndex '100'
    setTimeout("result('true')"2000); 
    document.forms[0].submitButton.value 'Suchen'

    else 

    document.all['ergebnis'].style.zIndex '-1'


    function 
    ref() 

    if(
    document.forms[0].string.value == ''

    document.forms[0].submitButton.value 'Suchen'


    </
    script

    <
    form name="search" onSubmit="return findInPage(this.string.value);"
    <
    input name="string" type="text" size="38" onChange="n = 0;" 
    <
    input type="submit" name="submitButton" value="Suchen"
    </
    form
    Funktioniert ja auch bestens, nur das ich auf meiner Seite mit "iFrames" arbeite und er mit diesem Script nur auf der aktuellen Seite sucht aber nicht im "iFrame". Meine Frage ist also, was muss ich an diesem Script aendern und in den "iFrame-Seiten" hinzufuegen, damit er auch in den "iFrames" sucht? Weiss da jemand Rat?

    Ich danke euch jetzt schonmal fuer eure Muehe!

    Greetz, King A.

  • #2
    NN6, IE5: document.getElementsByTagName('iframe');
    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      Mhh, ich kann also entweder mit (ID ist erstmal nur Beispiel):

      document.getElementsByTagName("iframe");

      oder

      document.getElementsByID("Frame");

      Das entsprechende Element ansprechen.

      Ich wuesste jetzt, wie ich z.B. die hoehe oder die breite des iframes dadurch aendern keonnte, aber wie ich es jetzt mache, das er dort dann auch mit dem Script sucht (also auf der Seite die im iframe angezeigt wird), weiss ich net. Koennte mir da noch jemand auf die Spruenge helfen? (Code ist ja im ersten Post).

      Ich danke schonmal im voraus...

      Greetz, King A.

      Kommentar


      • #4
        ach so ... nicht "nach iFrame" sondern "im iFrame-Dokument" suchen ...

        position = frames.iframename.document.body.innerText.search('regexp);

        Dabei könnten parentElement und scrollIntoView noch hilfreich sein (beide nur im IE seit 4.0), sobald du rausfindest, zu welchem Element der gefundene Text gehört ...

        Übrigens liefert getElementsByTagname (oder Name) eine Liste von Elementen, also ein Array.
        mein Sport: mein Frühstück: meine Arbeit:

        Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

        Kommentar

        Lädt...
        X