andy: Attribut einfügen

Hallo,

bin in javascript nicht so vertraut und habe ein Frage.
Ist es möglich mit Javascript attribute in ein Element einzufügen?
Ich will folgendes machen. Füge in alle lins <a> eines Dokumments atributt target="_blank". Ist das möglich, wenn ja wie würde das aussehen? Vielen Dank im vorraus, ANDY

  1. Hallo,

    Ist es möglich mit Javascript attribute in ein Element einzufügen?
    Ich will folgendes machen. Füge in alle lins <a> eines Dokumments atributt target="_blank".

    Dann solltest du dir mal

    http://de.selfhtml.org/javascript/objekte/document.htm#get_elements_by_tag_name

    und

    http://de.selfhtml.org/javascript/objekte/node.htm#set_attribute

    anschauen.

    Gruß, Jan

  2. Hi,

    bin in javascript nicht so vertraut und habe ein Frage.
    Ist es möglich mit Javascript attribute in ein Element einzufügen?
    Ich will folgendes machen. Füge in alle lins <a> eines Dokumments atributt target="_blank". Ist das möglich, wenn ja wie würde das aussehen? Vielen Dank im vorraus, ANDY

    Wäre in so einem Fall nicht die Verwendung von <base target=""> der sinnvollere Weg?

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    Schreinerei Waechter
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Wäre in so einem Fall nicht die Verwendung von <base target=""> der sinnvollere Weg?

      Ja Stimmt, Ich habe aber nicht gewusst, dass es so geht. Danke

  3. Hallo,

    Ich will folgendes machen. Füge in alle lins <a> eines Dokumments atributt target="_blank". Ist das möglich, wenn ja wie würde das aussehen?

    function BlankLinks()
    {
      var links=document.links;
      var anz=links.length;
      for(i=0;i<anz;i++)if(links[i].attributes["href"])links[i].setAttribute("target","_blank");
    }

    und

    <body onload="BlankLinks()">

    wobei mir die Methode mit <base target="_blank"> (im head-Element) auch mehr zusagen wuerde.

    BTW: Statt attributes["href"] waere auch die Abfrage auf hasAttribute("href") moeglich, aber das setzt der IE nicht um.

    MfG, Thomas

    1. wobei mir die Methode mit <base target="_blank"> (im head-Element) auch mehr zusagen wuerde.

      Hallo,

      danke für die Hilfe, So ging auch. Aber ich habe dann mit base target="_blank" gemacht. Wusste ich nicht dass, es so geht. Danke nochmal.
      Gruss Andy

    2. Hi,

      links[i].setAttribute("target","_blank");

      Besser: links[i].target="_blank";

      Dann klappt's auch unter JS 1.5. ;-)

      Gruß, Cybaer

      --
      Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
      1. Und dann natürlich noch statt

        if(links[i].attributes["href"])

        if(links[i].href)

        =;-)

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        1. Hallo,

          Und dann natürlich noch statt

          if(links[i].attributes["href"])

          if(links[i].href)

          Ich ticke halt kaum noch auf DOM-0-Level, dazu mache ich DOM mittlerweile vorwiegend im SVG-Kontext, wo solche Attribut-Abfragen nicht mehr machbar sind ;-).

          MfG, Thomas

          1. Hi,

            Ich ticke halt kaum noch auf DOM-0-Level, dazu mache ich DOM mittlerweile vorwiegend im SVG-Kontext, wo solche Attribut-Abfragen nicht mehr machbar sind ;-).

            Schon klar. Im DOM Level 0 allerdings auch nicht. In *diesem* Fall aber (also explizit was Links angeht), ist der hier benötigte Wert allerdings seit JS 1.1 direkt abrufbar. *Andere* Attribute sind nicht abrufbar (genauer: es wird auch gar nicht das Attribut HREF abgefragt - die Werte von getAttribute("href") & Co. und links.href sind durchaus unterschiedlich: einmal der reale Attributwert, im anderen Fall der konkrete, absolute URI).

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
          2. Ich ticke halt kaum noch auf DOM-0-Level

            Hm? Das kann man auch als DOM 1 HTML auffassen.

            Mathias

            1. Hi,

              Ich ticke halt kaum noch auf DOM-0-Level
              Hm? Das kann man auch als DOM 1 HTML auffassen.

              Als DOM Level 1 bezeichnet man die alten "echten", aber proprietären DOMs: all und layer.

              DOM Level 0 hat sich als inoffizielle Bezeichnung für die (Basis-)Objekte von JavaScript (insbes. images) eingebürgert, da hier erstmals so etwas wie DHTML möglich war (Image-Rollover).

              Gruß, Cybaer

              --
              Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
              1. Hallo,

                Ich ticke halt kaum noch auf DOM-0-Level
                Hm? Das kann man auch als DOM 1 HTML auffassen.

                Als DOM Level 1 bezeichnet man die alten "echten", aber proprietären DOMs: all und layer.

                Ja, das ist mir klar. Was du beschrieben hast, ist aber nicht nur schon in frühen Netscape-JavaScript-Versionen spezifiziert, sondern auch in DOM 1 HTML standardisiert, das gleichzeitig mit DOM 1 Core verabschiedet wurde und mittlerweile über sechs Jahre alt ist. Daher war wohl »ich ticke kaum noch auf HTML-spezifischem DOM« gemeint.

                Mathias

    3. Hallo,

      Ich will folgendes machen. Füge in alle lins <a> eines Dokumments atributt target="_blank". Ist das möglich, wenn ja wie würde das aussehen?

      function BlankLinks()
      {
        var links=document.links;
        var anz=links.length;
        for(i=0;i<anz;i++)if(links[i].attributes["href"])

      Ist attributes["name"] nicht etwas kritisch? http://www.quirksmode.org/dom/w3c_core.html#attributes getAttribute scheint besser unterstützt zu werden.
      (Haben nicht alle Elementobjekte in document.inks per definitionem ein href-Attribut?)

      Mathias

      1. Hi,

        (Haben nicht alle Elementobjekte in document.inks per definitionem ein href-Attribut?)

        Erst ab JS 1.1.

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        1. (Haben nicht alle Elementobjekte in document.inks per definitionem ein href-Attribut?)

          Erst ab JS 1.1.

          Meinst du, dass in JavaScript 1.0 auch Links ohne href-Attribut enthalten sind, also diejenigen, die auch in document.anchors stehen? Das finde ich so in keiner der beiden Spezifikationen, sie scheinen sich in dem Punkt zu gleichen.

          1. Hi,

            Erst ab JS 1.1.
            Meinst du, dass in JavaScript 1.0 auch Links ohne href-Attribut enthalten sind, also diejenigen, die auch in document.anchors stehen?

            Nein, aber es war mißverständlich: links besitzt die Eigenschaft href erst ab 1.1.

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  4. Hallo andy,

    Ich will folgendes machen. Füge in alle lins <a> eines Dokumments atributt target="_blank". Ist das möglich, wenn ja wie würde das aussehen?

    ich hoffe doch nicht, um eine Seite mit strengerer HTML-Variante doch noch neue Fenster unterzujubeln?

    http://selfworld.calocybe.dyndns.org/ftmp/offsite-links.html

    Grüße
    Roland