2011 Február 18, 2011

Javascript IE Hiba: Az objektum nem támogatja ezt a tulajdonságot vagy a metódust

Vajon ez a furcsa kérdés, ahol egy darab Javascript jól működött minden böngészőben ANS szokás szerint bár az IE :) Egyszerű volt ..., de mivel a szkript nem én írtam, Eltartott egy darabig, hogy ez a hibakeresés "Az objektum nem támogatja ezt a tulajdonságot vagy a metódust" hiba, hogy csak IE-ben hányt. Valószínűleg! Ha én írni a forgatókönyvet, nem szeretném ezt a hibát már megvan minden, hiszen ne keverje össze az én változó neve mezőben azonosítói :).

Probléma: Az objektum nem támogatja ezt a tulajdonságot vagy a metódust (on line 3)

function funzoneSP(){ document.getElementById('video_id').style.visibility="hidden"; shortdesc = document.getElementById('shortdesc').value; .... } 

Megoldás:
A hiba keletkezik a thirdrow a fenti példában (3. sor ... "= shortdesc document.getE ...."). Kipróbáltam minden fajta hülyeségeket, mert nem éri meg a még itt megemlíteni, és végül mit kitalálni! A változó csak shortdesc var valami másra megszabadultak a hibát. Alapvetően! A változó nevét kellett eltér a fieldID


2009 Március 24, 2009

Le van tiltva = "true" és a fogyatékkal élő = "false" ugyanaz?

Ez is régi iskola, de mint rendesen, ez az én memória kiegészítés ...
Szóval le van tiltva = "true" és a fogyatékkal élő = "false" ugyanaz? Igen
... Nem hiszem, jól! Amit így van ... itt van néhány gyors magyarázat ...
"Letiltva" egy attribútum bármilyen formájú elem / területen, és így el tudja fogadni bármilyen értéket természeténél fogva.

Amíg ez az attribútum jelen van, az elem le lesz tiltva, függetlenül annak értékétől. pl.
<input type="text" value="This van disabled" disabled>
<input type="text" value="This van disabled" disabled="disabled">
<input type="text" value="This van disabled" disabled="true">
<input type="text" value="This van disabled" disabled="false">

A fenti teszi az ebben a formában a területen "letiltva".

Egyszerűen nem nyújtja az attribútum "Disabled" tartja a mező "tiltható" ... mint az alábbi

<input type="text" value="This nem disabled" />

Ne feledje "Minden érték (vagy értékkel egyáltalán nem rendelkeznek) a fogyatékos attribútumot, a böngésző lehetővé teszi majd, hogy tiltva". Annak érdekében, hogy minden egyértelmű a fejekben W3C javasolja, hogy az általunk használt tiltott = "fogyatékos" ezekben a helyzetekben.

Ez a különbség azonban, ha használjuk ezt az attribútumot a javascript ...

document.form.element.disabled = true; / / az elem le lesz tiltva
document.form.element.disabled = false; / / az elem engedélyezve lesz

A fenti érvek is igaz, ezen attribútumok és elemek száma:

  • ellenőrzött (rádió gomb és checkbox)
  • kiválasztva (opció)
  • nowrap (td)

2009 Március 7, 2009

Több Windows Calling onLoad Függvények Javascript

Eretnekségek másik kis peice a Javascript trükk, hogy meg kellett ásni körül, mert a helyzet commaned azt. Az egyik internetes oldalak, nem volt ez a helyzet, amikor kellett végrehajtani "windows.onload" kétszer. Az első dolog, ami jött, hogy egy tapasztalatlan szem előtt, mint az enyém (Azt kell mondani őszintén, hogy mivel én már a javascript keretrendszerek és könyvtárak, én forgotton, hogy nem egyszerű dolgokat a saját ... Szomorú, de igaz), a következő módszer ...

 window.onload = onloadfn1;
 window.onload = onloadfn2;
 window.onload = onloadfn3;
 stb ..

Sajnálom mondani, de ez nem megy ... nem akarunk, hogy megvitassák a végrehajtási tudománya Javascript sokat ... de az én közelmúlt tapasztalatai, csak az utolsó funkció (onloadfn3) rosszul lesz ténylegesen kerül végrehajtásra.

Normális helyzetben, ellentétben az enyém (ami fogok beszélni egy kicsit később) ... akkor tegye a következőket végrehajtani mutliple onload funkciót ....

Vagy valami ehhez hasonló

 doOnLoad funkció () {
         onloadfn1 ();
         onloadfn2 ();
         onloadfn3 ();
 }
 window.onload = doOnLoad;

Az én jelenlegi helyzet, nem tudom használni sem a fenti ...
Miért kell hívnia windows.onload kétszer, hanem hogy felhívja a két funkció egyetlen onload funkciót? Itt gyors pillantást az én problémám ... nyilatkozat

"Saját hely oldalak struktúrája, mint a WordPress téma .... vagyis van közös footer.php header.php, és hogy lesz bekerült a oldalaihoz. Van egy onload funkciót végrehajtani azokat a footer.php csinálni néhány közös funkciók onload. És van néhány oldalon, hogy kell valamit a saját onload, kivéve azokat a feladatokat a közös onload funkciót. Ha hozzá callback függvényt közvetlenül a felvezető window.onload, akkor felülírjak korábban rendelt callback a footer.php "

.... Az én problémám megértette :) ?

Nos! van néhány megoldás, hogy tudtam megtalálni. Mindannyian nagyon hasonlóak, és főleg implementions egy adott megoldást Simon Willison ( http://simonwillison.net/2004/May/26/addLoadEvent/ ) ...

Megoldás:

Egyszerűen adja hozzá ezt a javascript kódot az oldal ...

 addLoadEvent funkció (funkció) {
     var = oldonload window.onload;
     if (typeof window.onload! = 'funkciójú') {
        func = window.onload
     Else {}
        window.onload = function () {
            if (oldonload) {
                   oldonload ()
           }
           func ()
        }
    }
 }

És hívj, ahelyett, hogy a szokásos "windows.onload"

 addLoadEvent (FunctionToRunOnPageLoad);
 addLoadEvent (function () {
 / * Több kódot futtatni az oldal betöltésénél *
 }); 

Előnye ennek a kódrészletet ...
1. Elsősorban Ez lehetővé teszi több windows.onload események hívott különálló részei a kódot anélkül, hogy a korábbi definíció overridding
2. Ez igazán feltűnő. Meg lehet helyezni egy fájlt a másik script, vagy egy külön fájlban.
3. Úgy működik, még akkor is, ha window.onload már be van állítva.


2008 December 25, 2008

Dinamikusan betöltése JavaScriptek

Néha tartani a pageweight le ... már szét a szkriptek darabokra ... Ezek a javascript töredékek is betöltésre kerül, és szükség esetén (egy eseményről, vagy kattintson a hivatkozásra vagy gombra stb.)

JavaScriptek betöltése dinamikusan egyszerű és szép egyenes továbbít az alábbiak szerint ...

= “text/javascript” > <Script type = "text / javascript">
loadNewScript funkció (forrás) {
var s = document.createElement ('script');
s.setAttribute ('type', 'text / javascript');
s.setAttribute ("src", forrás);
document.body.appendChild (ek);
}
</ Script>

és akkor az alábbi linkre hívás bárhol a szervezetben, vagy tudod, hogy ez a szkript "onLoad" az maga a dokumentum ...

= “javascript:loadNewScript('myDynamicScript.js');” >Load Dynamic Script</ a > <A href = "javascript: loadNewScript (" myDynamicScript.js '); "> Load dinamikus Script </ a>

vagy

<body onload="loadNewScript('myDynamicScript.js');">


2008 Október 3., 2008

Egyszerű, könnyű, Cross Browser Lightbox a weboldala

Nem létezik, hogy csak néhány azon LightBox, hogy megtalálja, ha google. A kérdés a legtöbb albumok találtam az volt, hogy minden úgy tűnt, hogy az egyik vagy a másik nagy súlyú JAVASCRIPT keretek, mint a jQuery, Prototype, MooTools és a szeret. Ezek mind hűvös és hencegő keres. De ha a követelmény, hogy "de én szeretnék egy egyszerű és könnyű LightBox SCRIPT oldalam", akkor itt van;

Néhány szép funkciói adni

  1. Nagyon könnyű
    egy. 4kB a Scripts amikor a csomagolt (8 kb csomagolatlan)
    b. 2 KB CSS
    c. Néhány sornyi HTML adni a tartály
  2. Egyszerű megérteni és végrehajtani
  3. Lehet több albumok ugyanazon az oldalon.
  4. Ugyanez adni konténer megjelenítésére használják, különböző tartalmak (ami külön tartalmazza a rejtett megosztottság az oldalon), attól függően, hogy a link / opció kattint.
  5. Automatikusan középre magát, figyelembe véve minden olyan tényezőt, mint például ablak magassága és szélessége (képernyő felbontás), lapozzunk oldal összeg és a magassága tartalmát a albumba
  6. Tesztelve IE 7 és FF

Demo megtekintése |
Töltse Lightbox Forrás Zip (Letöltve 1803 alkalommal)


A Lightbox [fájlok a zip fájlban]

jo.js, jo_pack.js [csomagolt verzió]: - egy egyszerű JavaScript objektumok [JO], amely elem, ablak-és dokumentum-helymeghatározó szkripteket. Meg tudja nyitni JO.JS ha szeretné kapni a kezét piszkos néhány fejlett Javascripting, ami absztrakt funkciók kiterjesztése és az ilyen elem tulajdonságait. Ha nem túl sokat Javascripting, Hagyd békén.

lightbox.js, lightbox_pack.js [csomagolt verzió]: - nem tartalmaz világító doboz szkriptjeire. Ha az oldal tervezője, felelős a végrehajtó adni az oldalon, meg kell értened a LightBoxManager. LightBoxManager alapvetően csak két funkciót tartalmaz, és showLightBox closeLightBox.

lightbox.css: - Ha tudja, CSS, játszhatsz körül lightbox.css szabni a look-n-érzi lightbox.css

index.html: Példa végrehajtása adni két különböző tartalom

lb_underlay_bkg.png: - Ez világos / átlátszó kép Simi, hogy használják a hátteret adni alátét [alátét az a réteg alatt lighbox, amely megakadályozza, hogy a felhasználó rákattint bármely más szervezet az oldalon, míg a nyitott adni]. Használhatja bármelyik képet, vagy akár egy egyszínű erre a célra, attól függően, hogy az oldal tervezés és a követelmény.

icon_lb_close.gif: - A kép közel adni fogantyút a jobb felső világító doboz. Használhatja minden képet mintánként

Demo megtekintése |
Töltse Lightbox Forrás Zip (Letöltve 1803 alkalommal)

Kérjük, ossza meg velünk, hogy meg észrevételeit és visszajelzéseit ...


2008 Szeptember 13, 2008

JavaScript: Edit weblap a böngészőben

Nos, azt kell mondjam, nem egy ilyen hasznos darab a tudomány, de ha egy Web Developer, jól jöhet, egy nap (vagy ugye?). Itt kicsi bookmarklet, amely lehetővé teszi, hogy szerkessze a weboldal bármely oldalon.
És sajnálom! Ön tudja menteni az eredményt a helyi gépen csak.

javascript: document.body.contentEditable = "true"; document.designMode = 'a'; void 0


2008 Szeptember 2, 2008

CSS hack: Javascript, CSS, HTML Firefox csak

Sok idő érezzük annak szükségességét, hogy írjon a problémák böngésző hack (bár ez nem egy jó megoldás, akkor UI fejlesztők kénytelenek ilyen rossz, míg a nagy Böngészők Wars jön egy fegyverszünet). Korábban én is a cikkben említett Az Ön csak IE , hogyan kell írni a CSS részlet lenne látható IE böngésző <IE7 csak.

Tegnap volt egy eset, amikor meg akartam írni néhány FireFox specifikus CSS kódrészlet. Nos! Nem vagyok biztos abban, hogy van egy CSS kód, de van egy HTML. Van egy fogás azonban ez a darab HTML HTML doesnot hágó érvényesítés. De anywaz! Ha elakadsz, vagy rosszul, mint olyan, nincs-érvényesítés tekintetében a (néha van, hogy kegyetlen), akkor használja a következő, hogy nyilvánítson egy linket egy FF csak a stíluslapot, vagy akár csak kódolni a CSS ezen blokk. A kód

<comment> Tedd csak Firefox HTML / CSS / Scripts itt </ comment>

például
<comment>
<style>
/ * Stílusok az FF csak * /
fieldset {border: 1px solid # dddddd;}
</ Style>
</ Comment>

I "m boldog ebben a pillanatban ...


2008 Szeptember 1, 2008

Vegye speciális tételt egy javascript tömb, amely megfelel az átadott sztring

Itt gyors módja meghosszabbítja a natív Javascript Array objektum, csak erre ...

Array.prototype. removeItem =function(str) {
for(i=0; i<this.length ; i++){
if(escape(this[i]).match(escape(str.trim()))){
this.splice(i, 1); break;
}
}
return this;
}

Szóval most meg tudod csinálni valami ilyesmit ...

var animals= new Array("dog","lion","cat","tiger","elephant");
animals. removeItem ('tiger');

Most az állatok tömb tartalmazza a "kutya", "oroszlán", "macska", "elefánt";

PS: És itt van a String Vágás Prototype is ...

String.prototype.trim=function(str) {
str = this != window? this : str;
return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}


Élvezze ....


2008 Május 15, 2008

Legjobb Gyakorlatok: Munka a JavaScript

Tartalmazza JavaScript alján a HTML-dokumentum

Ha nincs document.write (vagy bármilyen dinamikus generációs oldal tartalmát a JavaScript), hogy be része az oldal tartalmát, a szkriptek, mozgassa a szkript include utasítást a lap aljára, mielőtt vége a body tag.
A HTTP/1.1 specifikáció azt sugallja, hogy letölthető böngésző nem több, mint két komponens párhuzamosan egy hostname. Ha kiszolgálni a képeket a többszörös kiszolgáló nevek, akkor még több mint 2 letöltés fordulnak elő párhuzamosan. Míg egy szkript letöltése, azonban a böngésző nem indul el semmilyen más letöltések, sőt a különböző nevekre.
Vannak módon dinamikusan létrehozni SCRIPT csomópontok és töltse távoli szkriptek után az oldal betöltésekor AJAX.

Ön JavaScript kihelyezni

A külső JavaScript fájlokat eredményez gyorsabb betöltése oldalakat, mert a JavaScript gyorsítótárazva van a böngésző. Inline JavaScript "a HTML dokumentumokban kap minden egyes alkalommal letöltődnek a HTML dokumentumban kérik. Ez talán valóban számának csökkentése HTTP kérések, de ezt követően növeli a méretét a HTML dokumentumba. Külső JavaScript-k gyorsítótárba a böngésző, a méret a HTML dokumentum csökken anélkül, hogy növelné a HTTP kérések számát.
Felhívjuk figyelmét, hogy ha a felhasználók a honlapján több oldalletöltést per session és sok a lapok újra ugyanazt a szkriptek és stíluslapok, van egy nagyobb valószínűséggel részesül a külső fájlok cache-elt.

Csomagolja a JavaScript fájlok

Abban az esetben, JavaScript, CSS ellentétben, a fájlokat is csikorgott segítségével néhány szabványos algoritmusok adna csökkentett fájl lesz, mint egyszerű eltávolítását szóközöket vagy tabulátorokat. Egy példa a javascript csomagoló itt található http://dean.edwards.name/packer/

Megszabadulni minden Duplicate Scripts

Nagyon szokatlan, hogy az egész szkriptet lehet sokszorosítani, de felülvizsgálja a 10 vezető amerikai internetes oldalak azt mutatják, hogy ők ketten tartalmaz duplikált forgatókönyvet. Ismétlődő scriptek de nyilvánvalóan csökkenti a teljesítményt, hogy felesleges HTTP kérések és az elpazarolt JavaScript végrehajtása.
Emellett sok esetben, bár a nevek különböző szkriptek, fennáll a veszélye a kettős szkriptek ugyanazon az oldalon miatt csapat mérete és száma a szkripteket.

Kis méret elérése DOM elemeit, ha lehetséges

Elérése DOM elemek JavaScript lassú ezért annak érdekében, hogy egy rugalmasabb oldalon, a következőket kell tennie:
• Cache hivatkozások elérhető elemek
• Frissítés csomópontok "offline", majd add hozzá a fa
• Kerülje a JavaScript elrendezés rögzítése

Külön viselkedésében tartalma és bemutatása

Ahogy azt külön bemutató (CSS / XSLT) a tartalom (XHTML / XML), azt is meg kellene szétválasztani Behavior (Javascript). Ez az úgynevezett diszkrét Javascript. Ahogy azt összekapcsolni a külső CSS fájlokat, akkor össze kell kapcsolnia a külső javascript fájlokat.

Ahelyett, hogy kemény kódolás viselkedése a tartalom (pl. onmouseover, onclick, stb), viselkedés dinamikusan kell hozzá elem, osztályok és egyedi elemek (ID) segítségével a DOM. A megalapozó dokumentum tartalmát, csak akkor kell tartalmaznia, XHTML / XML és JavaScript nélkül.
Javascript kellene növelni tartalmak hozzáadásával viselkedését. A tartalom továbbra is hasznos és használható javascript nélkül (vagy nem teljes javascript támogatás).


2008 Március 15, 2008

Izgatja Select dobozok keresztül látható a Popup osztályok

Több alkalommal, eközben oldalelrendezések felugró megosztottságot / albumok / etc Tippek találkozhatunk olyan helyzetekben, amikor valamilyen formában SELECT tárgyak történik, hogy az e POPUP osztályok, tervezési és ez átüt .... Yuk!

Nos! akkor könnyen kijavítani ezt beállítani a z-index értékeket megfelelően az FF és az IE7. De a jó öreg (szójáték szándékozott) IE6 nem úgy viselkedik, mint szánták .... A legördülő lista segítségével mutatják, még azután is alkalmaz valamilyen drasztikusan magas z-index értékeket a popup osztály ... A fenébe!

Jelenleg nem jelentek meg javítások ezt a problémát, de vannak, azt hiszem, több, mint néhány munkába menet-körül ez a probléma, de Im itt, hogy elmondjam a legegyszerűbb megoldás, hogy használjam, ami jól működik nekem, a legtöbb esetben ....

"Elrejtése ROUGE SELECT listában, akkor megjeleníti a POPUP"

Egyszerűen a script kódrészletet mutatni, ahol a popup, adjunk hozzá egy darab szkriptet láthatóságát beállítja a legördülő lista a "Rejtett"

document.getElementById ('my_select "). style.visibilty =" rejtett ";

És ne feledd, hogy állítsa vissza a Close a PopUp osztály

document.getElementById ('my_select "). style.visibilty =" látható ";

ahol "my_select" az ID-irritáció SELECT Box

Remélem ez segít ...

PS. Vannak persze más lehetőségek, mint dinamikusan positionining IFRAME-ben (akkora, mint te PopUp) a Popup DIV ... Ez jól működik is, de egy hozzáadásával rengeteg DOM elemek, szkriptek és fejfájás. Én használtam ezt a megoldást is, és ha mégis segítségre van szüksége ezzel az opcióval, ne szólj. Szívesen segítünk!


NDK home | Kifejezése IT | kifejezése szájpadlás | kifejezése Penmenship | kifejezése Awe | kifejezése Myself