2011 18 helmikuu 2011

IE Javascript Virhe: Objekti ei tue tätä ominaisuutta tai menetelmää

Oli tämä outo asia, kun pala Javascript toimi hienosti kaikissa selaimessa ans normaalisti baari IE :) ... Helppo se oli, mutta koska käsikirjoitus ei ole kirjoittanut minulle, vei aikaa debug "Objekti ei tue tätä ominaisuutta tai menetelmää" virhe, että vain IE oli oksettaa. Luultavasti! Jos minun pitäisi kirjoittaa käsikirjoitus, en olisi saanut tätä virhettä ollenkaan, koska ei saa sekoittaa minun muuttuvan nimet kenttään tunnukset :).

Ongelma: Objekti ei tue tätä ominaisuutta tai menetelmää (rivillä 3)

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

Ratkaisu:
Virhe syntyy siitä thirdrow yllä olevassa esimerkissä (Line 3 ... "shortdesc = document.getE ...."). Olen kokeillut kaikenlaisia ​​typeriä asioita, joita en ei kannata edes mainita täällä ja lopulta arvaa mitä! vain muuttamalla shortdesc var jotain muuta eroon virhe. Periaatteessa! Muuttujan nimi oli erilainen fieldID


2009 24 maaliskuu 2009

Ei ole käytössä = "true" ja käytössä = "false" sama?

Tässä niistä old school, mutta kuten tavallista, se on minun muisti lisä ...
Joten ei ole käytössä = "true" ja käytössä = "false" sama? Kyllä
... Älä usko, hyvin! thats miten se on ... täällä on muutamia nopeita selitys ...
"Pois päältä" on ominaisuus minkäänlaista elementin / kenttä, ja näin ollen voi hyväksyä arvoa luonteeltaan.

Niin kauan kuin tämä määrite on läsnä, elementti poistetaan käytöstä riippumatta sen arvosta. esim..
<input type="text" value="This on disabled" disabled>
<input type="text" value="This on disabled" disabled="disabled">
<input type="text" value="This on disabled" disabled="true">
<input type="text" value="This on disabled" disabled="false">

Kaikki edellä mainitut tekee tämän luetteloa "käytössä".

Yksinkertaisesti ei tuota määritettä "Disabled" pitää Field "ABLED" ... kuten alla

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

Muistakaa "Mikä tahansa arvo (tai lainkaan arvoa) vammaisten määritteen selain tekevät sen käytöstä". Jotta asiat selväksi mielessämme W3C suosittelee, että käytämme käytössä = "vammaiset" näissä tilanteissa.

Tämä ero kuitenkin kun käyttää tätä ominaisuutta javascript ...

document.form.element.disabled = true; / / elementti poistetaan käytöstä
document.form.element.disabled = false; / / elementti on käytössä

Edellä argumentit pätevät myös näiden attribuuttien:

  • tarkastetaan (valintanappi ja valintaruutu)
  • valittu (optio)
  • nowrap (td)

2009 07 maaliskuu 2009

Soittaminen Useita Windows lataustapahtuman Tehtävät Javascript

Tässäpä toinen vähän peice Javascript kikkailu, että minun piti kaivaa noin, koska tilanne commaned sitä. Yhdessä minun sivustoja, minulla oli tämä tilanne, jossa minun piti toteuttaa "windows.onload" kahdesti. Ensimmäinen asia, joka tuli kokemattomalle mieleen kuin minun (Täytyy rehellisesti sanoa, että koska olen käyttänyt javascript puitteisiin ja kirjastot, olen forgotton tehdä yksinkertaisia ​​asioita itse ... surullista mutta totta), on seuraavan menetelmän ...

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

Ikävä sanoa, mutta tämä tapa toimia ... dont halua keskustella toteuttamiseen tiede Javascript paljon ... mutta oman viimeaikaisten kokemusten, vain viimeinen toiminto (onloadfn3) on sairas todella saada teloitettiin.

Normaaleissa tilanteissa, toisin kuin minun (jonka minä puhua hieman myöhemmin) ... voisit jollakin seuraavista suorittaa mutliple onload toiminnot ....

Tai jotain tällaista

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

Minun nykyinen tilanne, en voi käyttää kumpaakaan edellä ...
Miksi minun pitää soittaa windows.onload kahdesti, vaan että soittaa kaksi tehtävää yhden onload funktio? Tässä vilkaista minun ongelmani ilmoitus ...

"Oman sivuston sivut on rakennettu kuten WordPress teema .... eli ei yhteistä Header.php ja footer.php, joka sisällytetään kaikkiin sivuille. On onload funktio implementaion vuonna footer.php tehdä joitakin yhteisiä onload toimintoja. Ja on muutamia sivuja, jotka tarvitsevat jotain omaa lataustapahtuman, lukuun ottamatta tehnyt yhteisiä onload toimintoa. Jos liittää takaisinkutsufunktio suoraan window.onload ohjaaja, se ohittaa aiemmin määritetty kutsuja on footer.php "

.... Onko minun ongelmani ymmärtää :) ?

No! on olemassa muutamia ratkaisuja, en löydä. Ne kaikki ovat hyvin samanlaisia ​​ja pääasiassa implementions ja liuoksen annetaan Simon Willison ( http://simonwillison.net/2004/May/26/addLoadEvent/ ) ...

Ratkaisu:

Lisää vain tämä javascript-koodin sivusto ...

 toiminto addLoadEvent (FUNC) {
     var oldonload = window.onload;
     if (typeof window.onload! = 'toiminto') {
        window.onload = FUNC
     } Else {
        window.onload = function () {
            Jos (oldonload) {
                   oldonload ()
           }
           FUNC ()
        }
    }
 }

Ja kutsuvat sitä sen sijaan, että "windows.onload"

 addLoadEvent (FunctionToRunOnPageLoad);
 addLoadEvent (function () {
 / * Lisää koodin suorittamisen sivunlatauksella *
 }); 

Edut Tämän koodinpätkän ...
1. Ensisijaisesti se voit olla useita windows.onload tapahtumia, soitti erillistä osiin koodia ilman overridding edellinen määritelmä
2. Se on todella huomaamaton. Se voidaan sijoittaa tiedoston sinun on skriptejä tai erilliseen tiedostoon.
3. Se toimii vaikka window.onload on jo asetettu.


2008 25 joulukuu 2008

Ladataan JavaScript Dynaamisesti

Joskus pitää pageweight alas ... olemme jakaneet skriptejä palasiksi ... Nämä javascript fragmentit voidaan ladata ja kun tarvitaan (on tapahtuma tai napsauttamalla linkkiä tai painiketta jne.).

Ladataan JavaScript dynaamisesti on yksinkertainen ja melko suoraan eteenpäin alla ...

= “text/javascript” > <Script type = "text / javascript">
toiminto loadNewScript (lähde) {
var s = document.createElement ('script');
s.setAttribute ("tyyppi", "text / javascript");
s.setAttribute ("src", lähde);
document.body.appendChild (s);
}
</ Script>

ja voit olla seuraava kutsu linkkiä missä tahansa kehon, tai voit saada tämän script "onLoad"-asiakirjan itse ...

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

tai

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


2008 03 lokakuu 2008

Yksinkertainen, kevyt, Cross Browser valopöydälle oman verkkosivun

Ei siksi, että on olemassa vain muutamia LightBox n että löydät kun google. Asia useimpien valopöytien löysin oli se, että he kaikki näyttivät käyttää yhtä tai muun raskaan JAVASCRIPT puitteet kuten jQuery, prototyyppi, MooTools ja tykkää. Ne ovat kaikki hienoja ja upea näköinen. Mutta jos vaatimus on "Haluan HELPPO JA KEVYT LightBox SCRIPT FOR MY SITE", niin tässä se on;

Muutamia kivoja ominaisuuksia tämän lightboxiin

  1. Erittäin kevyt
    . 4KB skriptejä pakattuna (8 kb ilman pakkausta)
    b.. 2 KB CSS
    c. Muutaman rivin HTML lightboxiin säiliön
  2. Helppo ymmärtää ja toteuttaa
  3. Voi olla useita valopöydät samalla sivulla.
  4. Sama lightboxiin kontteja käytetään osoittamaan, eri sisältö (joka on erikseen sisällytetty piilotettu divisioonaa sivulla), riippuen linkkiä / vaihtoehto napsautetaan.
  5. Automaattisesti keskittää itsensä, ottaen huomioon kaikki seikat, kuten Ikkunan korkeus ja leveys (resoluutiosta), sivu siirry määrästä ja korkeudella sisällön lightboxiin
  6. Testattu IE 7 & FF

Katso esittely |
Lataa Lightbox Lähde Zip (Downloaded 1791 kertaa)


Käyttämällä Lightbox [Tiedostot zip-tiedosto]

jo.js, jo_pack.js [pakattu versio]: - yksinkertaisia ​​JAVASCRIPT ESINEET [JO], joka sisältää elementti, ikkuna-ja asiakirja paikannus skriptejä. Voit avata JO.JS jos haluat saada kädet likainen joidenkin Advanced Javascripting, luoda abstrakti toimintojen laajentaminen elementin ominaisuuksia ja tällaisia. Jos et ole liikaa Javascripting, jätä se rauhaan.

lightbox.js, lightbox_pack.js [pakattu versio] - sisältävät valolaatikosta johtaja skriptejä. Jos sivun suunnittelija, vastaa myös toimeenpanossa lightboxiin sivulla, sinun täytyy ymmärtää LightBoxManager. LightBoxManager periaatteessa sisältää vain kaksi tehtävää showLightBox ja closeLightBox.

lightbox.css: - Jos tunnet CSS, voit leikkiä lightbox.css mukauttaa look-n-tuntuu lightbox.css

index.html: Näyte täytäntöönpano lightboxiin kaksi erilaista sisältöä

lb_underlay_bkg.png: - Tämä on kevyt / samankal läpinäkyvä kuva, jota käytetään taustalla lightboxiin Aluskatteen [Alusta on kerroksen alla lighbox, joka estää käyttäjää klikkaamalla muulta sivulta, kun lightboxiin on auki]. Voidaan käyttää mitä tahansa kuvan tai jopa yksivärinen tätä tarkoitusta varten, riippuen sivu suunnitteluun ja vaatimus.

icon_lb_close.gif: - kuva lähes lightboxiin kahva oikeassa yläkulmassa Valolaatikko. Voiko käyttää mitä tahansa kuvaa kohti suunnitteluun

Katso esittely |
Lataa Lightbox Lähde Zip (Downloaded 1791 kertaa)

Pyydämme teitä antamaan meille palautetta ja kommentteja ...


2008 13 syyskuu 2008

JavaScript: Muokkaa Web-sivu selaimessa

No, minun täytyy sanoa, ei niin käytännöllinen pala tiedettä, mutta jos olet Web Developer, voivat tulla kätevä, joskus (vai onko se?). Tässä on pieni kirjanmerkki, jonka avulla voit muokata sivun mille tahansa sivustolle.
Ja anteeksi! Voit tallentaa tuloksia omalla koneellasi vain.

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


2008 02 syyskuu 2008

CSS hack: Javascript, CSS, HTML ja vain Firefox

Monta kertaa me tunnemme tarvetta kirjoittaa selaimeen pyrkien hakata (vaikka se ei ole hyvä käytäntö, meillä UI kehittäjät turvautua niin pahaa, kunnes suuri Selaimet Wars tulee aselepo). Aiemmin olin maininnut tässä artikkelissa Oman IEs vain , kuinka kirjoittaa CSS-pätkä, joka näkyisi IE-selaimissa <IE7 vain.

Eilen minulla oli tapaus, jossa halusin kirjoittaa joitakin FireFox CSS määritellään katkelmia. No! En ole varma, onko CSS koodi tähän, mutta on HTML. On CATCH vaikka tämä pala HTML doesnot pass HTML validointi. Mutta, anywaz! Jos olet juuttunut pahasti tai sellaisenaan, ole-osalta validointi (joskus meidän täytyy olla julma), voit käyttää seuraavia julistaa linkin FF vain tyylitiedoston tai edes koodata CSS tämän lohkon. Koodi on

<comment> Laita vain Firefox HTML / CSS / Scripts täältä </ comment>

esim.
<comment>
<style>
/ * Styles FF vain * /
fieldset {border: 1px solid # dddddd;}
</ Style>
</ Comment>

I "m iloinen hetki ...


2008 01 syyskuu 2008

Poista erityisiä kohteen javascript array, joka vastaa kulunut merkkijonoa

Tässä on nopea tapa laajentaa natiivin Javascript Array Object vain tehdä niin ...

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

Nyt voit tehdä jotain ...

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

Nyt eläimet array sisältää "koira", "leijona", "kissa", "norsu";

PS: Ja tässä on String Trim Prototype liian ...

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


Nauti ....


2008 15 toukokuu 2008

Parhaat käytännöt: Työskentely JavaScript n

Sisällytä JavaScript n alareunassa HTML-asiakirja

Jos sinulla ei ole document.write (tai dynaaminen polven Sivujen sisällön avulla javascriptit) lisätä osa sivun sisältöä sivusi, siirrä käsikirjoitus sisältää lausuman sivun loppuun, ennen body.
HTTP/1.1 erittely osoittaa, että selaimet ladata korkeintaan kaksi komponenttia rinnakkain kohti hostname. Jos näytät kuvia useista isäntänimiä, voit saada enemmän kuin kaksi lataukset esiintyy rinnakkain. Kun käsikirjoitus ei lataamista, mutta selain ei aloita mitään muita ladattavia, jopa eri isäntänimiä.
On myös tapoja dynaamisesti luoda SCRIPT solmut ja ladata kauko-skriptien kun sivu ladataan AJAX.

Ulkoistaa te JavaScript n

Ulkoisen JavaScript tiedostot mahdollistaa nopeammat kuormitus sivut, koska JavaScript tiedostot välimuistiin selaimen. Inline JavaScript n 'HTML-asiakirjoissa saa ladata aina HTML asiakirja on pyydetty. Tämä voi todella vähentää määrää HTTP-pyyntöjen mutta sen jälkeen koko kasvaa HTML asiakirjan. Ulkoiset JavaScript n välimuistiin selaimen, koko HTML asiakirjan pienenee lisäämättä määrää HTTP-pyyntöjä.
Huomaa, että jos käyttäjät sivustossasi on useita sivun näyttökertaa istunto ja monet sivut uudelleen käyttää samaa skriptit ja stylesheets, on paremmat mahdollisuudet hyötyä välimuistiin ulkopuolisista tiedostoista.

Pakkaa Javascript tiedostot

Jos JavaScript, toisin kuin CSS-tiedostot voisi crunched käyttäen joitakin standardin algoritmeja, jotka antaisivat vähemmän tiedostokoko kuin yksinkertaisesti poistamalla välilyönneillä tai tabulaattorilla. Esimerkki javascript pakkaajan löytyvät täältä http://dean.edwards.name/packer/

Päästä eroon kaikista Duplicate Scripts

On erittäin harvinaista, että koko skriptejä voidaan monistaa, mutta uudelleen kymmenen eniten Yhdysvaltojen web-sivustojen mukaan kaksi niistä sisältävät päällekkäisiä käsikirjoituksen. Monista skriptejä mutta ilmeisesti heikentää suorituskykyä luomalla tarpeettomia HTTP-pyyntöjä ja hukkaan JavaScript-koodin suoritus.
Myös monissa tapauksissa, mutta skriptit nimet ovat erilaiset, on todennäköistä, kaksoiskappaleen skriptien saman sivun johtuen ryhmän kokoa ja määrää skriptien.

Minimoi pääsy DOM elementtien mahdollisuuksien

Pääsy DOM elementtejä JavaScript hitaasti niin, jotta entistä paremmin vastaamaan sivun, sinun pitäisi:
• Cache viittauksia näytetty elementtien
• Päivitä solmuja "offline", ja lisää ne puuhun
• Vältä vahvistamisesta ulkoasun kanssa JavaScriptin

Erillinen käyttäytymistä sisältöä ja esittämistapaa on

Aivan kuten me erillisenä Esitys (CSS / XSLT) Content (XHTML / XML), meidän pitäisi myös erottaa Behavior (Javascript). Tätä kutsutaan huomaamattomia Javascriptiä. Aivan kuten me linkittää ulkoiseen CSS-tiedostoja, meidän pitäisi linkittää ulkoisia javascript tiedostoja.

Sen sijaan kovaa koodausta käyttäytymisestä sisältöä (esim. onmouseover, onclick, jne.), toiminta olisi dynaamisesti lisätä elementtejä, luokat ja ainutlaatuinen elementit (IDS) käyttäen DOM. Perustava asiakirja, sisältöä, pitäisi olla vain voimassa XHTML / XML eikä javascriptiä.
Javascript pitäisi lisätä sisältöä lisäämällä käyttäytymistä. Sisällön tulisi pysyä hyödyllinen ja käyttökelpoinen ilman javascriptiä (tai ilman täyttä javascript-tuki).


2008 15 maaliskuu 2008

Ärsyttää Valitse laatikot näkyy läpi Popup alueet

Useasti, kun teet sivuasettelut kanssa popup osastojen / valopöytien / Vinkkejä jne. Olemme törmänneet tilanteisiin, joissa jonkinlainen Valitse objektit sattuu olemaan näissä POPUP toimialojen suunniteltu ja se näkyy läpi .... Yök!

No! voit helposti korjata tämän muuttamalla Z-indeksin arvot asianmukaisesti FF ja IE7. Mutta Good Old (pun tarkoitettu) IE6 ei toimi tarkoitetulla tavalla .... SELECT BOX näkyy läpi, vaikka asentamisen jälkeen jotkut rajusti korkea Z-INDEX arvoja ponnahdusikkunoiden Division ... Bummer!!

EI ole PISTEET tähän ongelmaan, mutta uskoakseni enemmän kuin muutama työmatka-kiertää tämän ongelman, mutta Im täällä kertoa yksinkertaisin ratkaisu, jota käytän, joka toimii hyvin minulle, useimmissa tapauksissa ....

"Piilota ROUGE SELECT BOX Kun näytät POPUP"

Yksinkertaisesti sinun script katkelmassa, jossa näytät popup, lisää pala käsikirjoituksen asettaa näkyvyyttä SELECT Box on "näkymätön"

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

Muista asettaa se takaisin päättyessä ponnahdusikkunoiden Division

document.getElementById ("my_select '). style.visibilty =" näkyvä ";

missä "my_select" on tunnus ärsytystä SELECT Box

Toivottavasti tämä auttaa ...

PS. On tietysti muita vaihtoehtoja, kuten dynaamisesti positionining IFRAME (samaa kokoa kuin sinä PopUp) mukaan Popup DIV ... Tämä toimii hyvin myös, mutta lisätty kuormien DOM Elements, skriptit ja päänsärky. Olen käyttänyt tätä ratkaisua myös, ja jos et tarvitse mitään apua tämän vaihtoehdon, älä kerro minulle. On ilo auttaa!


NDK home | Ilmaiseminen IT | ilmaiseminen Palate | ilmaiseminen Penmenship | ilmaiseminen Awe | ilmaista itseäni