Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Nu imi platiti coletul cu cardul ...

Mi-au disparut amigdalitele ?

Exista vreun plan de terorizare p...

Schimbare adresa DNS IPv4 pe rout...
 Recomandare Barebone

Monede JO 2024

Suprasolicitare sistem electric

CIV auto import
 Mutare in MOZAMBIC - pareri, expe...

Scoatere antifurt airtag de pe ha...

Magnet in loc de clește pent...

Cumparat/Locuit in apartament si ...
 Pot folosi sistemul PC pe post de...

Sokol cu distorsiuni de cross-over

Filtru apa potabila cu osmoza inv...

Kanal D va difuza serialul “...
 

Javascript

- - - - -
  • Please log in to reply
29 replies to this topic

#1
Blitzkrieg

Blitzkrieg

    SIR

  • Grup: Senior Members
  • Posts: 2,050
  • Înscris: 13.02.2005
Sunt incepator in Javascript, deci nu stiu chiar nimic. Din ce am citit eu pe w3schools si am retinut dintr-un curs de js am incercat sa fac un script cu o functie in js care la un event sa modifice css-ul din site, mai exact background-color al unui DIV.
Problema e ca nu merge si habar nu am ce sa-i mai fac.

<body>

<script type="text/javascript">
function changeC()
	{
	var sir=new Array();
	sir[0]="red";
	sir[1]="black";
	sir[2]="green";
	sir[3]="blue";
	sir[4]="orange";
	nr=Math.floor(Math.random()*4);
	color=colors[nr];
	box=document.getElementsByTagName("div");
	document.box.style.backgroundColor=color;
	}
</script>

<div style="background-color:#FF0000" onmouseover="changeC();">adasdasd</div><br />
<div style="background-color:green"> XXXXX </div>

</body>

Din ce ma astept eu sa faca, e ca atunci cand merg cu mouse-ul peste primul DIV, sa se schimbe culoarea de background la cele 2 DIV-uri.

Si as aprecia daca mi-ati putea spune un Javascript Editor bun sau si mai bine un plug-in Dreamweaver CS2 / CS3 care sa aiba autocompletion si sa verifice sintaxa.

Merci in avans.

#2
romio79

romio79

    Active Member

  • Grup: Members
  • Posts: 1,655
  • Înscris: 30.03.2005
problema ta e la box=document.getElementsByTagName("div");
asta returneaza o lista adica ar trebui sa iei box=document.getElementsByTagName("div")[0];

#3
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006
metoda "curata" este sa-i dai fiecarui element dorit a fi manipulat ulterior un id (<div id="sidebar">test</div>) si apoi sa folosesti metoda getElementById() al aceluiasi obiect din DOM

#4
Blitzkrieg

Blitzkrieg

    SIR

  • Grup: Senior Members
  • Posts: 2,050
  • Înscris: 13.02.2005

View Postromio79, on Sep 5 2007, 10:14, said:

problema ta e la box=document.getElementsByTagName("div");
asta returneaza o lista adica ar trebui sa iei box=document.getElementsByTagName("div")[0];

am incercat si cum ai zis tu, si am incercat si asa:

box=document.getElementsByTagName("div");
document.box[0].style.backgroundColor=color;

Tot nu merge. Cand se intampla eventul imi scrie IE Error on page.

#5
romio79

romio79

    Active Member

  • Grup: Members
  • Posts: 1,655
  • Înscris: 30.03.2005

View PostBlitzkrieg, on Sep 5 2007, 12:52, said:

am incercat si cum ai zis tu, si am incercat si asa:

box=document.getElementsByTagName("div");
document.box[0].style.backgroundColor=color;

Tot nu merge. Cand se intampla eventul imi scrie IE Error on page.
Pentru ca nu m-am uitat ce-ai scris mai departe
Trebuia sa scrii asa :
box=document.getElementsByTagName("div")[0];
box.style.backgroundColor=color;
sau
list = document.getElementsByTagName("div");
for (var i = 0; i < list.lenght; i++) {
box[i].style.backgroundColor=color;
}


#6
[email protected]

[email protected]

    New Member

  • Grup: Members
  • Posts: 16
  • Înscris: 05.09.2007
:deadtongue: ce de coduri...
Vreau si eu sa invat...
Caut un curs de incepatori pe net. Care ma poate ajuta?

PS: sunt "foate" incepator, adica nu stiu cam nimic despre javascript sau java.

#7
Blitzkrieg

Blitzkrieg

    SIR

  • Grup: Senior Members
  • Posts: 2,050
  • Înscris: 13.02.2005

View Post[email protected], on Sep 5 2007, 13:37, said:

:deadtongue: ce de coduri...
Vreau si eu sa invat...
Caut un curs de incepatori pe net. Care ma poate ajuta?

PS: sunt "foate" incepator, adica nu stiu cam nimic despre javascript sau java.
la fel sunt si eu. incearca w3schools.com

@romio79: merci acum merge dar vreau sa ma lamuresc cu ceva:

1.
box=document.getElementsByTagName("div")[0];
box.style.backgroundColor=color;

2.
box=document.getElementsByTagName("div");
box[0].style.backgroundColor=color;

dupa logica mea primul cod returneaza doar primul div pe care il gaseste nemaiputand avea acces in continuare la box[1], box[2], etc pentru ca nu au fost returnate, IAR al 2-lea cod, returneaza toate div-urile, dar il modific doar pe primul.

asa e ? sau sunt identice ?

Edited by Blitzkrieg, 05 September 2007 - 13:08.


#8
romio79

romio79

    Active Member

  • Grup: Members
  • Posts: 1,655
  • Înscris: 30.03.2005

View PostBlitzkrieg, on Sep 5 2007, 13:55, said:

la fel sunt si eu. incearca w3schools.com

@romio79: merci acum merge dar vreau sa ma lamuresc cu ceva:

1.
box=document.getElementsByTagName("div")[0];
box.style.backgroundColor=color;

2.
box=document.getElementsByTagName("div");
box[0].style.backgroundColor=color;

dupa logica mea primul cod returneaza doar primul div pe care il gaseste nemaiputand avea acces in continuare la box[1], box[2], etc pentru ca nu au fost returnate, IAR al 2-lea cod, returneaza toate div-urile, dar il modific doar pe primul.

asa e ? sau sunt identice ?
da primul iti da doar primul div , la al 2-lea modifici doar primul div

#9
Blitzkrieg

Blitzkrieg

    SIR

  • Grup: Senior Members
  • Posts: 2,050
  • Înscris: 13.02.2005
Revin cu noi probleme. Sper sa se poata inteleaga.

Am facut niste functii in js, 4 mai exact care ma ajuta sa animez div-uri. Doua functii de miscat un DIV in sus, alte 2 pentru al misca in jos cand se declanseaza niste event-uri.
Acestea merg destul de bine pentru un div, zic 'destu de bine' pentru ca am si un bug, dar nu bug-ul ma deranjeaza acum.
Ce ma deranjeaza e ca am mai pus un DIV, deci am doua. Fiind in js doar 4 functii acestea nu pot lucra simultan pe abele div-uri. Adica in timp ce un div merge in jos sau sus, celalalt trebuie sa stea. M-am gandit ca o rezolvare sunt obiectele. Sa fac o clasa si apoi fiecare div sa fie un obiect cu metode, care acum sunt functiile mele simple. Asa fiecare obiect(div) se va putea folosi de metodele sale putand fi independent.

Ce nu stiu e cum sa combin obiectele cu DOM, adica cum fac sa declansez o metoda pentru un anumit obiect cand se intampla un event si cum pun un obiect din javascript sa apara ca fiind un div in html ?

#10
Blitzkrieg

Blitzkrieg

    SIR

  • Grup: Senior Members
  • Posts: 2,050
  • Înscris: 13.02.2005
bump
poate e o porcarie, dar asa m-am gandit eu (dar imi da error on page):

As avea nevoie de ceva tutoriale bune despre tot ce tine de obiecte si programare pe obiecte in javascript si php. Dau o bere virtuala  :naughty:

<html>
<style>
#asd
	{
	position:relative;
	float:left;
	background-color:#666666; 
	margin-left:0px;
	width:100px;
	margin:0px; 
	padding:0px; 
	height:120px;
	left:1px;
	top:-100;
	}
#asd1
	{
	position:relative;
	background-color:#ff0000;
	margin-left:0px;
	width:100px;
	margin:0px; 
	padding:0px; 
	height:120px;
	left:1px;
	top:-100;
	}
</style>
<script type="text/javascript">

function theDiv(id); //object definition
	{
	this.hidden=1
	this.top=-100;
	this.t;
	this.Id=id;
	this.slideup=ups;
	this.slidedown=highlight;
	this.box=document.getElementById(id);
	}

function moveup() //start move up
	{

	this.top=this.top-10;
	if (this.top<=-100) {clearInterval(this.t); this.hidden=1;this.top++; } 
	
	this.box.style.top=this.top;
	
	
	}
function movedown() //start move down
	{

	this.top=this.top+10;
	if (this.top>=0) {clearInterval(this.t); this.hidden=0; this.top--; } 
	
	this.box.style.top=this.top;
	}
function highlight() //move down
	{
	if (this.hidden==1)
	{
	
	
	this.t=setInterval('movedown("this.Id")',20);}
	}
function ups() //move up
	{
	if (this.hidden==0) {
	
	this.t=setInterval('moveup("this.Id")',20);}

	}
</script>

<body style="margin:0px; padding:0px;">
<script type="text/javascript">
a=new theDiv("asd");
b=new theDiv("asd1");
</script>
<div id="asd" onmouseover="a.movedown()" onmouseout="a.moveup()">asdad</div>
<div id="asd1" onmouseover="b.movedown()" onmouseout="b.moveup()">asdad</div>
</body>
</html>

Edited by Blitzkrieg, 07 September 2007 - 22:39.


#11
maxx_oo7

maxx_oo7

    Member

  • Grup: Members
  • Posts: 365
  • Înscris: 14.06.2007
Salut !
Ma poate ajuta cineva sa modific scriptul de mai jos astfel incat sa se schimbe mairmea textului odata cu schimbarea rezolutiei sau redimensionarea ferestrei?
Daca folosesc in loc de  : document.getElementsByTagName document.getElementsBId  de ce nu functioneaza?

function getTextWidth(text) {

var ea = document.createElement("span");

ea.innerHTML = text;

document.body.appendChild(ea);

var len = ea.offsetWidth;

document.body.removeChild(ea);

return len;

}

function scaleUp(elem, targetWidth) {

var blockWidth = getTextWidth(elem.innerHTML);

var defaultSize = parseInt(elem.style.fontSize || '6.5%')

var newSize = Math.floor(0.9*targetWidth/(blockWidth/defaultSize))

elem.style.fontSize = newSize + "%";

}

var element = document.getElementsByTagName("a")[0];

var width = document.body.offsetWidth;

scaleUp(element, width);


#12
maxx_oo7

maxx_oo7

    Member

  • Grup: Members
  • Posts: 365
  • Înscris: 14.06.2007
Nu ma poate ajuta nimeni sa modific scriptul? :(

#13
maxx_oo7

maxx_oo7

    Member

  • Grup: Members
  • Posts: 365
  • Înscris: 14.06.2007
Nu exista pe aici nici un speciaslist in javascript?

#14
stocarul

stocarul

    Member

  • Grup: Members
  • Posts: 497
  • Înscris: 06.05.2007
Salutare. Am si eu o intrebare :)
Am un script free, si vre-au sa modific putin pe la el. Are un fisier js, la care nu ma prea pricep, dar intelesai cam totul, in afara de urmotorul lucru:
Care este diferenta dintre
top.document.urmeazanumelemeudespammerprost;
si
document.urmeazanumelemeudespammerprost;

Pentru ce sunt urmatoarele doua functii:
try { cod..... }
si
catch(e) { cod.....}
Multumesc mult

#15
stocarul

stocarul

    Member

  • Grup: Members
  • Posts: 497
  • Înscris: 06.05.2007

View Poststocarul, on Oct 12 2007, 19:43, said:

Salutare. Am si eu o intrebare :)
Am un script free, si vre-au sa modific putin pe la el. Are un fisier js, la care nu ma prea pricep, dar intelesai cam totul, in afara de urmotorul lucru:
Care este diferenta dintre
top.document.urmeazanumelemeudespammerprost;
si
document.urmeazanumelemeudespammerprost;

Pentru ce sunt urmatoarele doua functii:
try { cod..... }
si
catch(e) { cod.....}
Multumesc mult
Chiar nu ma ajuta si pe mine nimeni ? :(
Am cautat pe net informatii, dar am gasit numai in engleza, si sunt cam bata in categoria asta :(
Va rog mult, am nevoie de acest mic ajutor...multumesc :)

#16
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006
top este probabil un frame. foloseste Firefox si un debugger cum e venkman <-- iar debuggerele sunt foarte des folosite in programare
try / catch au de a face cu exceptii <- foarte des folosite in OOP

#17
stocarul

stocarul

    Member

  • Grup: Members
  • Posts: 497
  • Înscris: 06.05.2007

View PostOriginalCopy, on Oct 13 2007, 23:37, said:

top este probabil un frame. foloseste Firefox si un debugger cum e venkman <-- iar debuggerele sunt foarte des folosite in programare
try / catch au de a face cu exceptii <- foarte des folosite in OOP
Nu prea intelesai nimic :(
Si intrai si pe acel link, si nu ma prea descurcai pt k nu prea stiu engleza :(

#18
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006
ca sa intelegi trebuie sa detii cunostinte de programare mai solide - si nu vorbesc de scripting in javascript sau php, ci de limbaje compilate. Cel mai bine incepi cu C si C++, nu iti recomand sa incepi sa intelegi programarea pe obiecte si/sau tehnici de debugging cu javascript, care nici macar nu e un limbaj adevarat, ci doar "o solutie murdara" :D

oricum daca vrei sa faci ceva in programare, ai nevoie de engleza, fara nu prea se poate

Anunturi

Chirurgia cranio-cerebrală minim invazivă Chirurgia cranio-cerebrală minim invazivă

Tehnicile minim invazive impun utilizarea unei tehnologii ultramoderne.

Endoscoapele operatorii de diverse tipuri, microscopul operator dedicat, neuronavigația, neuroelectrofiziologia, tehnicile avansate de anestezie, chirurgia cu pacientul treaz reprezintă armamentarium fără de care neurochirurgia prin "gaura cheii" nu ar fi posibilă. Folosind tehnicile de mai sus, tratăm un spectru larg de patologii cranio-cerebrale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate