2011 18. februar 2011

IE Javascript Napaka: Predmet ne podpira te lastnosti ali načina

Če bi to čudno vprašanje, če je kos Javascript delal globe v vseh brskalnika ans kot običajno vrstico IE :) Enostavno ... je bilo, ker pa je bil scenarij ni napisal zame, je vzel nekaj časa za odpravljanje napak to "Predmet ne podpira te lastnosti ali načina" napako, da je le IE je metanje gor. Verjetno! Če bi napisali scenarij, jaz ne bi dobil to napako sploh, ker ne smemo mešati moje imeni spremenljivk s polja ID-ji :).

Problem: Predmet ne podpira te lastnosti ali načina (on-line 3)

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

Rešitev:
Napaka se generira na thirdrow v zgornjem primeru (linija 3 ... "shortdesc = document.getE ...."). Poskušal sem vse vrste neumnih stvari, ki sem dont je tudi vredno omeniti tukaj in na koncu veš kaj! samo spremembo var shortdesc v nekaj drugega znebili napake. V bistvu! Ime spremenljivke je bilo drugačno od fieldID


2009 24. marec 2009

Onemogočena = "true" in onemogočil = "false" isto?

To tisti, stara šola, ampak kot ponavadi je moj spomin dodatek ...
Tako je onemogočena = "true" in onemogočil = "false" isto? Da
... Ne verjamem, no! thats načinu, kako je ... tukaj je nekaj hitro pojasnilo ...
"Onemogočeno" je lastnost vseh oblik elementa / poljska in zato lahko sprejme nobene vrednosti po svoji naravi.

Dokler je ta atribut prisoten, bo element, ne glede onemogočil njegove vrednosti. za npr.
<input type="text" value="This je disabled" disabled>
<input type="text" value="This je disabled" disabled="disabled">
<input type="text" value="This je disabled" disabled="true">
<input type="text" value="This je disabled" disabled="false">

Vse navedeno bo polje ta oblika "Onemogočeno".

Preprosto ne zagotavlja atribut "Onemogočeno" ohranja Field "ABLED" ... kot je spodaj

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

Ne pozabite, "nobene vrednosti (vrednost ali ne sploh) za invalide atributa, bo brskalnik postal je onemogočeno". Če želite, da se stvari jasne misli v našem W3C priporoča, da jih uporabljamo invalidi = "invalidi" v teh situacijah.

To je razlika, čeprav, ko smo uporabijo ta atribut javascript ...

document.form.element.disabled = true; / bodo / element invalide
document.form.element.disabled = false; / bodo / element omogočen

Zgoraj navedeni argumenti so tudi za te lastnosti in elementov:

  • preveriti (radio gumb in polje)
  • izbrana (opcija)
  • nowrap (td)

2009 7 marec 2009

Klicanje več oken Onload funkcij v JavaScript

Tukaj še malo peice of zvijače Javascript, da sem moral kopati okoli, ker razmere to commaned. V eni od mojih spletnih strani, sem imel ta položaj, kjer sem moral izvajati "windows.onload" dvakrat. Prva stvar, ki bi prišel do neizkušenega mislih, kot je moja (moram iskreno reči, da zato, ker sem bil z uporabo javascript okvire in knjižnice, sem forgotton narediti preproste stvari na moje ... žalostno, ampak resnično), je naslednja metoda ...

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

Žal mi je povedati, vendar to navada delo ... dont želite, da bi razpravljali izvršitve znanost Javascript veliko ... ampak glede na moje zadnje izkušnje, le zadnja funkcija (onloadfn3) slabo dejansko dobili usmrčen.

V normalnih razmerah, za razliko od moje (kar bom govoril o malo kasneje) ..., da bi lahko naredite nekaj od tega za izvajanje funkcij mutliple onload ....

Ali kaj takega

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

Za moje trenutno stanje, ne morem niti uporaba zgoraj ...
Zakaj moram poklicati windows.onload dvakrat, ne pa da kliče dve funkciji v eni sami funkciji onload? Tukaj je hiter pogled na moj problem izjavo ...

»Moja mesta strani strukturirana podobno temo WordPress .... torej obstaja skupna Header.php in Footer.php, da postane vključeni v vse strani strani. Obstaja onload funkcijo, izvajajo v Footer.php narediti nekaj skupnih funkcij onload. In obstaja nekaj strani, ki jih je nekaj lastnega ONLOAD, razen tistih, ki ga je opravila skupno funkcijo onload. Če sem dodelite funkcijo povratni klic neposredno na window.onload trener, bo preveč vozi že dodeljene callbacks v Footer.php "

.... Je moj problem razumeti :) ?

No! obstaja nekaj rešitev, da sem našel. Vsi so si zelo podobne in predvsem implementions z rešitvijo, ki jo je Simon Willison ( http://simonwillison.net/2004/May/26/addLoadEvent/ ) ...

Rešitev:

Preprosto dodajte to kodo javascript na spletni strani ...

 Funkcija addLoadEvent (funkcije) {
     var oldonload = window.onload;
     if (vrste uporabljene window.onload! = 'funkcija') {
        window.onload = funkcije
     } Else {
        window.onload = funkcija () {
            if (oldonload) {
                   oldonload ()
           }
           funkcije ()
        }
    }
 }

In rečejo namesto običajnega "windows.onload"

 addLoadEvent (FunctionToRunOnPageLoad);
 addLoadEvent (funkcija () {
 / * Več kode na strani obremenitve *
 }); 

Prednosti tega Emacsa ...
1. V prvi vrsti, je vam omogoča, da imate več dogodkov windows.onload, ki se imenuje iz ločenih delov kodo, ne da bi overridding prejšnji definiciji
2. To je res nevsiljiv. Lahko se namesti v datoteko z drugimi skripte ali v posebni datoteki.
3. Deluje tudi če je window.onload že določena.


2008 25. december 2008

Nalaganje javaScript Dinamično

Včasih, da pageweight dol ... smo po delih naše skripte na koščke ... Ti javascript delci lahko naložite kot in kadar je to potrebno (na dogodek ali klikom na povezavo ali gumb itd.)

Nalaganje Javascripts dinamično je preprosta in lepo naravnost naprej, kot je spodaj ...

= “text/javascript” > <Script type = "text / javascript">
Funkcija loadNewScript (vir) {
var s = document.createElement ('script');
s.setAttribute ("tip", "text / javascript");
s.setAttribute ('src', vir);
document.body.appendChild (i);
}
</ Script>

in lahko imajo naslednjo povezavo klic kjerkoli v telesu, lahko pa da je to scenarij "onLoad" v samem dokumentu ...

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

ali

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


2008 3. oktober 2008

Enostavno, Lahka, Cross Browser Lightbox za svojo spletno stran

Saj ne, da obstaja le malo Lightbox-jev, ki jih lahko najdete, ko google. Vprašanje z večino lightboxes da sem našel je bilo, da vse je zdelo, da uporabljajo eno ali drugih težkih okvire JavaScript teže, kot so jQuery, prototip, MOOTOOLS in podobno. Vsi so kul in šopirjenje videti. Toda, če vaša zahteva je, "A rad preprosto in Lahka pošta scenarij svojem mestu", potem je tukaj;

Nekaj ​​lepih lastnosti tega Lightbox

  1. Zelo lahka
    a. 4KB skriptov, ko pakirane (8 kb razpakirati)
    b. 2 kb CSS
    c. Nekaj ​​vrstic HTML za posodo pošta
  2. Enostavno razumeti in izvajati
  3. Imajo lahko več Lightboxes na isti strani.
  4. Enako Lightbox Posoda se uporablja za prikaz, drugačno vsebino, ki je vključena kot ločeno skrite delitve na stran), odvisno od povezave / opcije, ki je kliknil.
  5. Samodejno centrov, ob upoštevanju vseh dejavnikov, kot so, višino in širino Window (ločljivost zaslona), stran se pomaknite znesek, višina vsebine Lightbox
  6. Testiran v IE 7 in FF

Poglej Demo |
Prenesite Lightbox Vir Zip (Downloaded 1804 krat)


Uporaba osebni album [datoteke v zip datoteki]

jo.js in jo_pack.js [pakirani version]: - preprosto množica objektov JavaScript [UL], ki vsebuje elementov, ki okno in skripte položaja dokumentov. Odprete lahko JO.JS, če želite, da bi dobili vaše roke umazane z nekaj Napredno Javascripting, ustvarjanje abstraktnih nalog, razširitev lastnosti elementov in take. Če ni preveč v Javascripting, ga pusti pri miru.

lightbox.js, lightbox_pack.js [zapakirane version]: - Vsebuje svetlobne skripte upraviteljev polje. Če ste stran oblikovalec, odgovoren tudi z izvajanjem osebni album na strani, morate razumeti LightBoxManager. LightBoxManager v bistvu vsebuje le dve funkciji showLightBox in closeLightBox.

lightbox.css: - če veste, CSS, lahko igral s lightbox.css, da prilagodite videz-n-počutili lightbox.css

index.html: Vzorec izvajanje Lightbox z dveh različnih vsebin

lb_underlay_bkg.png: - To je lahka / podob pregledno sliko, ki se uporablja ozadje za podlogo pošta [podlogo plast pod lighbox, ki preprečuje uporabniku, s klikom na katero koli drugo osebo, na strani, medtem ko je odprt Lightbox]. Uporabite lahko katero koli sliko ali celo trdne barve za ta namen, odvisno od strani oblikovanja in zahteve.

icon_lb_close.gif: - slike za tesno ročaj pošta v zgornjem desnem kotu svetlobe polje. Lahko uporabite katero koli sliko, kot vsak model

Poglej Demo |
Prenesite Lightbox Vir Zip (Downloaded 1804 krat)

Prosimo vas, da nam je vaše komentarje in povratne informacije ...


2008 13. september 2008

JavaScript: Edit spletna stran v brskalniku

No, moram reči, ne pa kot uporaben kos znanosti, vendar če ste Web Developer, bi lahko prišel prav, nekega dne (ali pa bo to?). Tukaj je majhen Bookmarklet, ki omogoča urejanje spletne strani za vse strani.
In žal! Lahko shranite rezultate na vašem računalniku samo.

javascript: document.body.contentEditable = 'true'; document.designMode = "on", nična 0


2008 2. september 2008

CSS hack: Javascript, CSS, HTML za Firefox samo

Veliko krat smo se čutijo potrebo, da napišete brskalnika specfic hacks (čeprav to ni dobra praksa, smo UI razvijalci morali zateči k te zlo do velikih brskalnikih Wars prihaja na premirje). Pred tem sem že omenil v tem članku Za vašo IES Samo , kako napisati odlomek CSS, ki bi bila vidna v IE brskalnikih <IE7 samo.

Včeraj sem imel primer, kjer sem hotel napisati nekaj posebnega FireFox odrezke CSS. No! Nisem prepričan, če je koda CSS za to pa je HTML. Obstaja ulov Čeprav je ta kos HTML doesnot potrditve prelaz HTML. Ampak, anywaz! Če si zaljubljen slabo ali kot tako, ne-pozdrav za potrjevanje (včasih moramo biti kruto), lahko uporabite naslednje prijaviti povezavo do le slogovne FF ali celo samo kodiranje CSS v tem bloku. Koda je

<comment> Daj samo za Firefox html / css / scripts tukaj </ komentar>

npr.
<comment>
<style>
/ * Slogi za FF samo * /
fieldset {border: 1px solid # dddddd;}
</ Style>
</ Komentar>

I "m srečen za trenutek ...


2008 1. september 2008

Odstrani določen del iz paleto javascript, ki se ujema opravljen niz

Tukaj je hiter način podaljšanja domorodno Javascript Array predmet, samo za to ...

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;
}

Sedaj lahko naredite kaj takega ...

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

Sedaj bodo živali polja vsebujejo "pes", "leva", "mačka", "slon";

PS: In tukaj je String Trim Prototype preveč ...

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


Uživajte ....


2008 15. maj 2008

Najboljše prakse: delo s JavaScript'S

Vključi JavaScript organizacij na dnu dokumenta HTML

Če nimate document.write (ali dinamično generacija vsebino strani s pomočjo javaScript) vstaviti del vsebine strani je v tvojih skript, premaknite scenarij vključuje izjavo na dnu strani, pred koncem TELO oznako.
HTTP/1.1 specifikacija kažejo, da naložite brskalnik največ dva komponent, vzporedno na gostitelja. Če služijo slike iz več gostiteljskega imena, lahko dobite več kot dve downloads, da se pojavljajo vzporedno. Medtem ko scenarij je prenos pa brskalnik ne bo začela druge prenose, tudi na različnih gostiteljskega imena.
Obstajajo tudi načini za dinamično ustvarjanje skripta vozlišč in obremenitev oddaljenih skripte, ko je stran naložena z uporabo AJAX.

Zunanje strukture vam JavaScript'S

Uporaba zunanjih datotek JavaScript bo imelo za posledico hitrejše nalaganje strani, saj so datoteke shranjene JavaScript s strani brskalnika. "Inline JavaScript je v dokumentih HTML dobili prenesli vsakič HTML dokument se zahteva. To bi dejansko zmanjšalo število zahtev HTTP, nato se poveča velikost HTML dokumenta. Zunanji JavaScripta, so cached s strani brskalnika, velikost dokumenta HTML se zmanjša, ne da bi povečanje števila zahtev HTTP.
Prosimo, upoštevajte, da se, če uporabniki na vašo spletno stran, imajo več pogledov strani na seji in veliko vaših straneh, ponovno uporabljajo enake skripte in slogi, obstaja večja možnost koristi od zunanjih predpomnilniku datotek.

Pakiranje Tvoj JavaScript datoteke

V primeru javaScript, za razliko od CSS, datoteke lahko crunched uporabo nekaterih standardnih algoritmov, ki bi dala znižano velikost datoteke kot samo odstranite presledke ali tabulatorje. Primer javascript pakirnice lahko najdete tukaj http://dean.edwards.name/packer/

Znebite se vseh podvojene Scripts

To je zelo nenavadno, da bi se podvajajo celotne skripte, vendar pregled desetih najboljših ameriških spletnih strani je pokazala, da dve od njih vsebuje podvojeno scenarij. Dveh izvodih skripte vendar očitno zmanjšuje učinkovitost z ustvarjanjem nepotrebne zahteve HTTP in zapravlja JavaScript izvedba.
Poleg tega v mnogih primerih, čeprav so skripte imena so drugačna, obstaja verjetnost podvojene skripte znotraj iste strani zaradi velikosti skupine in števila scenarijev.

Zmanjšajo dostop DOM elemente, kjer je mogoče

Dostop DOM elemente z JavaScriptom je počasen, tako da bi imeli bolj odzivno strani, morate:
• Začasni sklicevanje na dostopni elementi
• Posodobitev vozlišča "offline" in jih nato dodajte v drevo
• Izogibajte določitvi postavitev z JavaScriptom

Ločeno obnašanje vsebini in navedbi

Tako kot smo ločeni Predstavitev (CSS / XSLT) iz vsebine (XHTML / XML), moramo ločiti tudi vedenje (JavaScript). To se imenuje nevsiljiv Javascript. Tako kot smo povezave do zunanjih datotekah CSS, moramo povezati z zunanjimi datotekami javascript.

Namesto trdega kodiranja vedenja v vsebino (npr. onmouseover, onclick, itd), je treba dinamično obnašanje se dodajo elementi, razrede in unikatnih elementov (IDS) z uporabo DOM. Temeljni dokument, vsebina, bi moral vsebovati le veljavna XHTML / XML in ni Javascript.
Javascript mora bogatenje vsebin z dodajanjem vedenje. Vsebina mora ostati koristne in uporabne brez JavaScript (ali brez polno podporo javascript).


2008 15. marec 2008

Draži Izberite Škatle viden skozi pojavnem oddelkov

Ob različnih priložnostih, medtem ko delaš postavitve strani z popup oddelki / lightboxes / Nasveti itd srečamo primere, ko neko obliko Izberi predmete zgodi, da je v teh Popup oddelkov, pri načrtovanju in kaže skozi .... Yuk!

No! da bi lahko z lahkoto popravite tako s prilagajanjem vaše Z indekse vrednosti primerno za FF in IE7. Dobro, ampak star (pun namenjena) IE6 ne obnašajo kot je bilo predvideno .... SELECT BOX kažejo skozi, tudi potem, ko ste uporabili nekaj drastično visoke Z indekse vrednosti ... tvoj PopUp Division Bummer!!

Ni določa za to težavo, vendar je po mojem mnenju, več kot nekaj poti v službo, to težavo, vendar im tukaj, da vam povem najpreprostejšo rešitev, ki ga uporabljam, ki deluje dobro za mene, v večini primerov ....

"Skrivanje Rouge SELECT polja, ko prikažete POPUP"

Preprosto v vašem scenarija izrezek, kjer pokažete svoje ljudstvo, dodamo košček scenarij za določitev prepoznavnosti oknu Izbira na "skritih"

document.getElementById ("my_select) style.visibilty =" skrito ".;

In ne pozabite, da ga je nazaj na koncu vašega pojavnih oddelka

. document.getElementById ("my_select) style.visibilty =" vidni ";

kjer "my_select" je ID za draženje oknu Izbira

Upam, da to pomaga ...

PS. Obstajajo tudi druge možnosti, kot gredo zraven dinamično positionining tudi IFRAME (enake velikosti, kot ste PopUp) v pojavnem DIV ... To dobro deluje preveč, vendar z dodatkom kupe DOM elementov, skripte in glavobolom. Imam uporabljajo to rešitev, preveč, in če vam potrebujete pomoč pri tej možnosti, pa mi sporočite. Bodo z veseljem pomagali!


NDK domov | Ki ga izraža | Izražanje Okus | Izražanje Penmenship | Izražanje Awe | Izražanje Sebe