Avatar billede binary Nybegynder
08. juli 2005 - 02:15 Der er 9 kommentarer og
1 løsning

Opret div istedet for img

Jeg er ved at lave et script, der ved onload skal kunne lave en div med noget indhold istedet for et img. Hagen er, at der ikke er noget id på billedet. Jeg har vha. følgende kunne identificere det specifikke billede:

var imgs,i;
imgs = document.getElementsByTagName('img');
for(i in imgs) {
if(imgs[i].src == "sti_til_billede") {
kode_der_skal_udføres
}

Det jeg så skal have hjælp til, er at erstatte det specifikke billede med en ny genereret div. Er det noget, nogen af jer kan klare? :-)
Avatar billede roenving Novice
08. juli 2005 - 10:11 #1
Hvorfor skal du dog det ?-)

-- og jeg spørger, fordi jeg ikke kender noget en div kan, som vi ikke kan få et billede til, mens billedet kan noget som diven ikke kan !-)
Avatar billede binary Nybegynder
08. juli 2005 - 11:39 #2
Fordi jeg vha. userContent.css og Greasemonkey til Firefox er ved at lave om på forum.pcplayer.jubii.dk, og der er nogle ekstremt grimme vBulletin-billeder jeg meget gerne ville have lavet om til noget pænere :-)

Jeg kan sagtens få lavet en ekstra div hvis jeg i forvejen har en - men problemet er, at det eneste holdepunkt der er, er et billede. :-)
Avatar billede roenving Novice
08. juli 2005 - 11:49 #3
Hvorfor styler du så ikke direkte på img-tagget/ændrer billedet ?-)
Avatar billede binary Nybegynder
08. juli 2005 - 12:01 #4
Hvordan?

Jeg vil allerhelst have fjernet billedet helt, og erstattet det af f.eks. en knap, men et nyt billede kan også gøre det :-)
Avatar billede roenving Novice
08. juli 2005 - 12:12 #5
En knap er vel også et nyt billede, men hvis du har fat i elementet er det vel kun at sætte en anden src på:

var imgs = document.getElementsByTagName('img');
for(i=0;i<imgs.length;i++) {
  if(imgs[i].src == "sti_til_billede") {
    imgs[i].src = "Ny sti til billede";
    imgs[i].style.borderWidth = '0';//osv.
  }
}

-- man kan også udskifte billedet til en div, mendet er en lidt længere vej, da man så først skal oprette elementet, og så via parent.replaceChild indsætte den i stedet !-)
Avatar billede binary Nybegynder
08. juli 2005 - 12:14 #6
Jeg vil meget gerne have den længere vej, hvis du har mod på det ;-)
Avatar billede roenving Novice
08. juli 2005 - 12:18 #7
var nyDiv = document.createElement('DIV');
var st = nyDiv.style;
st.backgroundImage = "mitvBulletinBillede.jpg";
st.height = "25px";
st.width = "22px";
st.float = "left";//osv.

var par = imgs[i].parentNode;
par.replaceChild(nyDiv,imgs[i]);
Avatar billede binary Nybegynder
08. juli 2005 - 12:24 #8
Mange tak, det var lige hvad jeg behøvede ;-)

Så skal jeg bare have et svar :-)
Avatar billede roenving Novice
08. juli 2005 - 12:25 #9
Velbekomme '-)
Avatar billede roenving Novice
08. juli 2005 - 12:43 #10
-- og tak for point ;~}
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