DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > (X)HTML, JavaScript, DHTML, XML, CSS
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

(X)HTML, JavaScript, DHTML, XML, CSS Client scripting tehnologije, Dynamic HTML, Cascading Stylesheets, XML i standardi

Odgovori
 
Alati teme Način prikaza
Staro 07. 12. 2006.   #1
flash_back
Banned
Professional
 
Datum učlanjenja: 24.04.2006
Lokacija: BG
Poruke: 270
Hvala: 11
9 "Hvala" u 5 poruka
flash_back is on a distinguished road
Default Java Script bug u FF zbog doctype-a!

Jurim neko parce koda koje bi na odredjenu selektovanu opciju iz menia ispisalo odredjen sadrzaj.. I nadjem takvo parce koda..

Kôd:
<html>
<head>
<script language="javascript">
function showhide(checkval){
var colData = "Here is my hidden text.";
if (document.layers){
document.layers['mylayer'].document.open();
document.layers['mylayer'].document.write("<form name='mylayer'>");
document.layers['mylayer'].document.write(colData);
document.layers['mylayer'].document.write("</form>");
document.layers['mylayer'].document.close();
document.layers['mylayer'].visibility=(checkval=="hide") ? 'hide' : "show";
}
else{
document.all['mylayer'].style.visibility=(checkval=="hide") ? 'hidden' :"visible";
document.all.mylayer.innerHTML = colData;
}
}
</script>
</head>
<body>
<form>
<select name="myfield" onChange="showhide(this[this.selectedIndex].text);">
<option>hide</option>
<option>show</option>
</select>
</form>
<div id='mylayer' style="position:absolute;left:10px;top:500px">&nbsp;</div>
</body>
</html>
Konkretno script mi treba za kontakt stranu za rd sajt. Poenta je da imam par kontakt opcija [izrada sajta, graficki design, pitanja i sl.] za koje ce da se ispisuje drugaciji raspored polja..

Problem nastaje kada se script pokrene u FireFoxu. Licno, ovo mi se prvi put dogadja da neka stvar radi ok u Operi i I.E. a da ne radi u FF-u! Navikao sam se da Imbecil E. bude ta crna ovcica, al' eto i ovo da se dogodi..

U pocetku nisam znao u cemu je problem, bilo je malo konfuzno jer scripta radi kada napravim novu stranu sa prikazanim kodom, ali ne i kada ubacim potrebne delove u kontakt stranicu. Malo sam cistio dokument i ispostavi se da je problem 'ladno u samom tipu dokumenta.

Kôd:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Isto je i sa [X]HTML Strict.. i svim mogucim varijantama. Script radi jedino bez doctype-a..

Stvarno svasta Neki predlozi za izmenu scripta? Ono 'innerHTML' mi izgleda sumljivo?

Poslednja izmena od flash_back : 07. 12. 2006. u 20:24.
flash_back je offline   Odgovorite uz citat
Staro 07. 12. 2006.   #2
noviKorisnik
Dejan Katašić
Wrote a book
 
Avatar noviKorisnik
 
Datum učlanjenja: 10.06.2005
Lokacija: Novi Sad
Poruke: 1.017
Hvala: 129
86 "Hvala" u 43 poruka
noviKorisnik će postati "faca" uskoro
Default

Rekao bih da je document.layers - umesto toga može po DOM-u document.getElementById ...
noviKorisnik je offline   Odgovorite uz citat
Staro 07. 12. 2006.   #3
dee
Domagoj Horvat
Expert
 
Avatar dee
 
Datum učlanjenja: 24.07.2006
Lokacija: Zagreb
Poruke: 502
Hvala: 22
10 "Hvala" u 8 poruka
dee is on a distinguished road
Pošaljite ICQ poruku za dee
Default

Citat:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<script language="javascript">
function showhide(checkval){
var colData = "Here is my hidden text.";
if (document.layers){
document.layers['mylayer'].document.open();
document.layers['mylayer'].document.write("<form name='mylayer'>");
document.layers['mylayer'].document.write(colData);
document.layers['mylayer'].document.write("</form>");
document.layers['mylayer'].document.close();
document.layers['mylayer'].visibility=(checkval=="hide") ? 'hide' : "show";
}
else{
document.getElementById('mylayer').style.visibility=(checkval=="hide") ? 'hidden' :"visible";
document.getElementById('mylayer').innerHTML = colData;
}
}
</script>
</head>
<body>
<form>
<select name="myfield" onChange="showhide(this[this.selectedIndex].text);">
<option>hide</option>
<option>show</option>
</select>
</form>
<div id='mylayer' style="position:absolute;left:10px;top:500px">&nbs p;</div>
</body>
</html>
sad radi

edit: eo me js guru preduhitrio
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo
dee je offline   Odgovorite uz citat
Staro 07. 12. 2006.   #4
flash_back
Banned
Professional
 
Datum učlanjenja: 24.04.2006
Lokacija: BG
Poruke: 270
Hvala: 11
9 "Hvala" u 5 poruka
flash_back is on a distinguished road
Default

Hvala ljudi ovo je bilo bas quicky

poz i tnx X2
flash_back je offline   Odgovorite uz citat
Staro 07. 12. 2006.   #5
flash_back
Banned
Professional
 
Datum učlanjenja: 24.04.2006
Lokacija: BG
Poruke: 270
Hvala: 11
9 "Hvala" u 5 poruka
flash_back is on a distinguished road
Default Moram da pipnem kod pa to mu je :)

Ajd dok sam tu kod vas js gurua da iskoristim priliku.

E ovako, malo sam 'suzio' kod (ako nije ok recite) i promenio sa visibility:hiden na display:none. I vise 'ne jurim' text opcije vec id, prakticnije je.

Kôd:
<script language="javascript">
function showhide(checkval){
var colData = "1";
var colData2 = "2";

if (checkval==1){
document.getElementById("mylayer").style.display=(checkval=="hide") ? "none" :"block";
document.getElementById("mylayer").innerHTML = colData;
}
else if (checkval==2){
document.getElementById("mylayer").style.display=(checkval=="hide") ? "none" :"block";
document.getElementById("mylayer").innerHTML = colData2;
}
else {
document.getElementById("mylayer").style.display=(checkval=="hide") ? "none" :"block";
document.getElementById("mylayer").innerHTML = colData2;
}
}
</script>
<form>
<select name="myfield" onchange="showhide(this[this.selectedIndex].id);">
<option id="hide">hide</option>
<option id="1">show</option>
<option id="2">show2</option>
</select>
</form>
^ Ovo iznad 'sljaka', al neznas sto ovo nece:?

Kôd:
<script language="javascript">
function showhide(checkval){


var colData1 = "1";
var colData2 = "2";

var nesto = "colData" + checkval;

document.getElementById("mylayer").style.display=(checkval=="hide") ? "none" :"block";
document.getElementById("mylayer").innerHTML = nesto;

}
</script>
<form>
<select name="myfield" onchange="showhide(this[this.selectedIndex].id);">
<option id="hide">hide</option>
<option id="1">show</option>
<option id="2">show2</option>
</select>
</form>
flash_back je offline   Odgovorite uz citat
Staro 07. 12. 2006.   #6
MorenoArdohain
Knowledge base
Wrote a book
 
Avatar MorenoArdohain
 
Datum učlanjenja: 16.06.2005
Lokacija: Novi Sad
Poruke: 1.437
Hvala: 37
131 "Hvala" u 82 poruka
MorenoArdohain će postati "faca" uskoroMorenoArdohain će postati "faca" uskoro
Default

Radi ti i taj drugi kod, nije me mrzelo da proverim.
Samo, text se prikazuje u dnu strane (posto si stavio position 500px od vrha strane).
__________________
Năo quero mais seguir um só caminho
MorenoArdohain je offline   Odgovorite uz citat
Staro 08. 12. 2006.   #7
flash_back
Banned
Professional
 
Datum učlanjenja: 24.04.2006
Lokacija: BG
Poruke: 270
Hvala: 11
9 "Hvala" u 5 poruka
flash_back is on a distinguished road
Default

Mislim radi kod, al ne ono sto bi ja zeleo.

Na selectovanje npr: show2 on bi trebao da printa '2' a ne 'colData2'.. Nesto ja tu neumem da sabiram
flash_back je offline   Odgovorite uz citat
Staro 08. 12. 2006.   #8
MorenoArdohain
Knowledge base
Wrote a book
 
Avatar MorenoArdohain
 
Datum učlanjenja: 16.06.2005
Lokacija: Novi Sad
Poruke: 1.437
Hvala: 37
131 "Hvala" u 82 poruka
MorenoArdohain će postati "faca" uskoroMorenoArdohain će postati "faca" uskoro
Default

Promeni
Kôd:
var nesto = "colData" + checkval;
u
Kôd:
var nesto = checkval;
__________________
Năo quero mais seguir um só caminho
MorenoArdohain je offline   Odgovorite uz citat
Staro 08. 12. 2006.   #9
flash_back
Banned
Professional
 
Datum učlanjenja: 24.04.2006
Lokacija: BG
Poruke: 270
Hvala: 11
9 "Hvala" u 5 poruka
flash_back is on a distinguished road
Default

Hehe vidim od oka, printace to 'ok' vrednost.. ali ok jer je id i vrednost za isti ista
flash_back je offline   Odgovorite uz citat
Staro 08. 12. 2006.   #10
MorenoArdohain
Knowledge base
Wrote a book
 
Avatar MorenoArdohain
 
Datum učlanjenja: 16.06.2005
Lokacija: Novi Sad
Poruke: 1.437
Hvala: 37
131 "Hvala" u 82 poruka
MorenoArdohain će postati "faca" uskoroMorenoArdohain će postati "faca" uskoro
Default

Ah, moze i tako, ali ako hoces da dodelis neki text za svaku opciju, onda izmeni da bude ovako:

Kôd:
var colData = new Array();
colData[1] = "poruka 1";
colData[2] = "poruka 2";

var nesto = colData[checkval];
__________________
Năo quero mais seguir um só caminho
MorenoArdohain je offline   Odgovorite uz citat
Odgovori



Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Uhapšeni zbog internet kladionice borstale e-Business 737 25. 12. 2012. 22:21
Java script - tezga :) torbica Poslovne ponude i zapošljavanje 2 02. 10. 2009. 01:43
Tužba zbog klevete na forumu borstale Opušteno 44 31. 01. 2008. 14:47
Java script & CSS coder djoxy Poslovne ponude i zapošljavanje 0 26. 01. 2007. 17:54


Vreme je GMT +2. Trenutno vreme je 20:02.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.