Avatar billede Slettet bruger
12. januar 2008 - 16:45 Der er 8 kommentarer og
1 løsning

Absolut link driller

Jeg prøver at give min linkfunktion en target="_blank" funktion med tegnsætningen driller ~:[

'linkType' og 'url' bliver i den udskrevende kode pakket ind i 2 klammer(") automatisk - hvis jeg prøver at sætte et target ind kommer den inden for de 2 klammer - hvordan kan jeg få dem adskildt?

java script:
var hyperLink = document.getElementById('linkType').value + document.getElementById('url').value + document.getElementById('linkTarget').value;
  window.opener.document.getElementById('wysiwyg' + qsParm['wysiwyg']).contentWindow.document.execCommand("CreateLink", false, hyperLink);
  window.close();
}

<form>
<select name="linkType" id="linkType" style="margin-right: 10px; font-size: 10px;">
    <option value="http://">http:</option>
    <option value="https://">https:</option>
    <option value="mailto:">mailto:</option>
    </select>

<select name="linkTarget" id="linkTarget" style="margin-right: 10px; font-size: 10px;">
    <option value="">Ingen</option>
    <option value="_blank">_blank</option>
    <option value="_parent">_parent</option>
    <option value="_self">_self</option>
    <option value="_top">_top</option>
    </select>

<input type="text" name="url" id="url" value="">
</form>
Avatar billede roenving Novice
12. januar 2008 - 16:59 #1
Det kan du ikke !-)

se f.eks. http://msdn2.microsoft.com/en-us/library/ms536982(VS.85).aspx ...
Avatar billede Slettet bruger
12. januar 2008 - 17:25 #2
Øv! så må jeg lave den manuelt...

men smid et svar som tak... ~:]
Avatar billede roenving Novice
12. januar 2008 - 17:40 #3
Oki '-)
Avatar billede roenving Novice
12. januar 2008 - 18:06 #4
-- og tak for point ;~}
Avatar billede olebole Juniormester
12. januar 2008 - 18:25 #5
<ole>

Men du kunne gøre det, at du giver linket en eller anden 'syg' href, som er let genkendelig ... f.eks: href="{URL_TO_REPLACE}". Så opretter du et array af dokumentets links - bladrer dem igennem - og udskifter URL'en på det rette, idet du samtidig sætter et target:

    var aLinks = DOC_REF.getElementsByTagName("a");
    for (var i=0,j=aLinks.length; i<j; i++) {
        if (aLinks[i].getAttribute("href")=="{URL_TO_REPLACE}") {
            aLinks[i].setAttribute("href", sURL);
            aLinks[i].setAttribute("target", "_blank");
            break;
        }
    }

- hvor DOC_REF er en reference til editor-dokumentet, og sURL indeholder URL'en, linket skal pege mod

/mvh
</bole>
Avatar billede Slettet bruger
12. januar 2008 - 18:29 #6
Okey! - hvordan vil den fuldendte kode i så fald se ud (jeg er totalt grøn i php~;])
Avatar billede olebole Juniormester
12. januar 2008 - 20:19 #7
- jamen så er det jo godt, det er JavaScript  :)

Muligvis sådan:

    var oDoc = window.opener.document.getElementById('wysiwyg' + qsParm['wysiwyg']).contentWindow.document;
    var sURL = document.getElementById('linkType').value + document.getElementById('url').value;
    oDoc.execCommand("CreateLink", false, "{URL_TO_REPLACE}");
   
    var aLinks = oDoc.getElementsByTagName("a");
    for (var i=0,j=aLinks.length; i<j; i++) {
        if (aLinks[i].getAttribute("href")=="{URL_TO_REPLACE}") {
            aLinks[i].setAttribute("href", sURL);
            aLinks[i].setAttribute("target", document.getElementById('linkTarget').value);
            break;
        }
    }
    window.close();
Avatar billede Slettet bruger
15. januar 2008 - 16:44 #8
Jamen det virker jo som det skal - tak for hjælpen.

olebole - jeg har oprettet et link med point til dig også... ~:]

http://www.eksperten.dk/spm/814791
Avatar billede olebole Juniormester
15. januar 2008 - 20:20 #9
;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester