Kezdőoldal » Számítástechnika » Programozás » JavaScript, hol a hiba?

Fish1 kérdése:

JavaScript, hol a hiba?

Figyelt kérdés

A következőt egy .pdf file-ból másoltam ki, de valamiért nem működik. Hozzáértő segítségét szeretném kérni, hogy mi a hiba benne.


<DIV id='SUB' align='center'; style=' display: none; overflow: hidden; width:

1px; height: 1px; left:0px; top:0px; position:absolute; '>

<font style = "font-family: Impact; text-decoration: none; font-weight: bold; fontstyle:

normal; color: #DDDDDD; font-size: 32pt;">

SIKERÜLNI FOG!<br>

MAGABIZTOS VAGY!<br>

ELKÉPZELT CÉLJAID MIND MEGVALÓSÍTOD!<br>

A NŐK SZERETNI FOGNAK!<br>

</font>

</DIV>

<script>

<!—Tudatalatti Befolyásolás -->

var StartDelay = 3*1000;

var RepeatDelay = 4*1000;

var RepeatTime = 100;

var Opacity = 20;

window.onload=Sub; Sub(); function Sub() {

document.getElementById('SUB').style.width = document.body.clientWidth;

document.getElementById('SUB').style.height =

document.body.clientHeight; setTimeout('SubOpenIt()',StartDelay); }

function SubOpenIt() { document.getElementById

('SUB').style.opacity = (Opacity / 100); document.getElementById

('SUB').style.MozOpacity = (Opacity / 100); document.getElementById

('SUB').style.filter = "alpha(opacity=" + Opacity + ")";

document.getElementById('SUB').style.display='inline'; setTimeout

('SubCloseIt()',30); } var x = 0; function SubCloseIt() {

document.getElementById('SUB').style.display='none'; x++; if (x <

RepeatTime+1) setTimeout('SubOpenIt()',RepeatDelay); }


2015. jan. 26. 18:29
 1/5 anonim ***** válasza:
Így voltak a pdf-ben is tagolva a sorok, vagy csak az oldal tördelte fel a kódot? Ha az előbbi akkor javítsd a sortöréseket.
2015. jan. 26. 21:39
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:
100%

Kezdésként takarítsuk ki a kódot:

- A HTML-tageket (például: <DIV>), azok attribútumainak értékét (például a SUB) írjuk kis betűvel, illetve egységesen használjuk az idézőjeleket.

- A soron belüli CSS kissé olvashatatlanná teszi a kódot - rakjuk külön <style> tagbe

- A <font> tag elavult. Az align attribútum is.

- A <script> tagnél régebben illet megadni a szkript típusát - HTML5-nél opcionális.

- HTML-kommentet ne rakjunk <script> tagen belülre

- A Javascriptnél a Setimeout metódus első paraméterét nem igényel idézőjeleket.

- Ugyancsak Javascriptnél a style.width/style.height értéke a szám után mértékegységet kell hogy tartalmazzon. A clientWidth/clientHeight értéke pedig csak szám.

- Indentáljuk a kódot - sokat javít az olvashatóságán.


Így legalább működőképes:

[link]


Viszont szerintem amit a szkript el szeretne érni - 3 másodperc után 30 ms-ra villanjon fel egy szöveg 4 másodpercenként 100-szor - ahhoz képest túl van bonyolítva. Csináltam egy egyszerűsített változatot:

[link]

2015. jan. 27. 00:21
Hasznos számodra ez a válasz?
 3/5 anonim ***** válasza:

#2: Ment a zöld pacsi, de ha már a takarításnál tartunk, azért ezt is bőven volna még hová finomítani...


A console használatával BTW vigyázni kell, mert ez így IE alatt elég csúnyán leülhet. Szaladtunk már bele olyanba, hogy egy console.log miatt feküdt meg egy komplett oldal, és nem volt egyszerű rájönni, mi okozza.

2015. jan. 27. 12:34
Hasznos számodra ez a válasz?
 4/5 A kérdező kommentje:

Köszönöm az eddigi segítségeteket.

Már a .pdf-ben is ilyen összevisszán volt benne. Én a programozáshoz nem értek, az lenne a kérdésem, hogy ezt a scriptet lehet-e firefoxban használni úgy, hogy böngészés közben működjön? Ha igen, akkor hogyan? És ez csak egy aktuálisan megnyitott lapon fog futni, vagy ha pl. 5 lap van megnyitva egy időben, akkor mindegyiken menni fog?

2015. jan. 27. 14:19
 5/5 anonim ***** válasza:

"A console használatával BTW vigyázni kell"

Ellenőrzés céljából volt benne, elhagyható.


"de ha már a takarításnál tartunk, azért ezt is bőven volna még hová finomítani... "

Az elsőnél a cél csak a működőképesség és a valid kódszerkezet kialakítása volt.


"ezt a scriptet lehet-e firefoxban használni úgy, hogy böngészés közben működjön? "

Kicsit átalakítottam a szkriptet, így a szöveget is a szkript teszi be az oldalba, illetve a szkript formázza meg:

[link]


Firefox böngészőhöz elérhető a Greasemonkey kiterjesztés ( [link] ), azzal lehet Javascript szkripteket a böngészőbe akár minden weboldalhoz beimplementálni.

2015. jan. 27. 19:28
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!