Autor | Zpráva | ||
---|---|---|---|
hubija Profil * |
#1 · Zasláno: 12. 11. 2013, 17:11:09
Zdravím,
na svých stránkách řeším problém. Ve všech prohlížečích, kromě IE se stránky zobrazí v naprostém pořádku a bez jakýchkoli problémů. IE při pokusu o načtení stránek nahlásí chybu a přestane pracovat. Nahlásí: Podrobnosti o chybě na webové stránce Uživatel zástupce: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E) Časové razítko: Tue, 12 Nov 2013 15:08:50 UTC Zpráva: 'u.body' má hodnotu null nebo není objekt. Řádek: 2 Znak: 1457 Kód: 0 Identifikátor URI: http://moje vymaslene stranky.cz/wp-content/themes/moje/assets/scripts/respond.js přikládám kód z chybného souboru /*! Respond.js v1.0.1pre: min/max-width media query polyfill. (c) Scott Jehl. MIT/GPLv2 Lic. j.mp/respondjs */ (function(e,h){e.respond={};respond.update=function(){};respond.mediaQueriesSupported=h;if(h){return}var u=e.document,r=u.documentElement,i=[],k=[],p=[],o={},g=30,f=u.getElementsByTagName("head")[0]||r,b=f.getElementsByTagName("link"),d=[],a=function(){var B=b,w=B.length,z=0,y,x,A,v;for(;z<w;z++){y=B[z],x=y.href,A=y.media,v=y.rel&&y.rel.toLowerCase()==="stylesheet";if(!!x&&v&&!o[x]){if(y.styleSheet&&y.styleSheet.rawCssText){m(y.styleSheet.rawCssText,x,A);o[x]=true}else{if(!/^([a-zA-Z]+?:(\/\/)?)/.test(x)||x.replace(RegExp.$1,"").split("/")[0]===e.location.host){d.push({href:x,media:A})}}}}t()},t=function(){if(d.length){var v=d.shift();n(v.href,function(w){m(w,v.href,v.media);o[v.href]=true;t()})}},m=function(G,v,x){var E=G.match(/@media[^\{]+\{([^\{\}]+\{[^\}\{]+\})+/gi),H=E&&E.length||0,v=v.substring(0,v.lastIndexOf("/")),w=function(I){return I.replace(/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,"$1"+v+"$2$3")},y=!H&&x,B=0,A,C,D,z,F;if(v.length){v+="/"}if(y){H=1}for(;B<H;B++){A=0;if(y){C=x;k.push(w(G))}else{C=E[B].match(/@media ([^\{]+)\{([\S\s]+?)$/)&&RegExp.$1;k.push(RegExp.$2&&w(RegExp.$2))}z=C.split(",");F=z.length;for(;A<F;A++){D=z[A];i.push({media:D.match(/(only\s+)?([a-zA-Z]+)(\sand)?/)&&RegExp.$2,rules:k.length-1,minw:D.match(/\(min\-width:[\s]*([\s]*[0-9]+)px[\s]*\)/)&&parseFloat(RegExp.$1),maxw:D.match(/\(max\-width:[\s]*([\s]*[0-9]+)px[\s]*\)/)&&parseFloat(RegExp.$1)})}}j()},l,q,j=function(E){var v="clientWidth",x=r[v],D=u.compatMode==="CSS1Compat"&&x||u.body[v]||x,z={},C=u.createDocumentFragment(),B=b[b.length-1],w=(new Date()).getTime();if(E&&l&&w-l<g){clearTimeout(q);q=setTimeout(j,g);return}else{l=w}for(var y in i){var F=i[y];if(!F.minw&&!F.maxw||(!F.minw||F.minw&&D>=F.minw)&&(!F.maxw||F.maxw&&D<=F.maxw)){if(!z[F.media]){z[F.media]=[]}z[F.media].push(k[F.rules])}}for(var y in p){if(p[y]&&p[y].parentNode===f){f.removeChild(p[y])}}for(var y in z){var G=u.createElement("style"),A=z[y].join("\n");G.type="text/css";G.media=y;if(G.styleSheet){G.styleSheet.cssText=A}else{G.appendChild(u.createTextNode(A))}C.appendChild(G);p.push(G)}f.insertBefore(C,B.nextSibling)},n=function(v,x){var w=c();if(!w){return}w.open("GET",v,true);w.onreadystatechange=function(){if(w.readyState!=4||w.status!=200&&w.status!=304){return}x(w.responseText)};if(w.readyState==4){return}w.send(null)},c=(function(){var v=false;try{v=new XMLHttpRequest()}catch(w){v=new ActiveXObject("Microsoft.XMLHTTP")}return function(){return v}})();a();respond.update=a;function s(){j(true)}if(e.addEventListener){e.addEventListener("resize",s,false)}else{if(e.attachEvent){e.attachEvent("onresize",s)}}})(this,(function(f){if(f.matchMedia){return true}var e,i=document,c=i.documentElement,g=c.firstElementChild||c.firstChild,h=!i.body,d=i.body||i.createElement("body"),b=i.createElement("div"),a="only all";b.id="mq-test-1";b.style.cssText="position:absolute;top:-99em";d.appendChild(b);b.innerHTML='_<style media="'+a+'"> #mq-test-1 { width: 9px; }</style>';if(h){c.insertBefore(d,g)}b.removeChild(b.firstChild);e=b.offsetWidth==9;if(h){c.removeChild(d)}else{d.removeChild(b)}return e})(this)); V javaScriptu moc neumím, proto budu rád za veškerou pomoc a rady. Díky |
||
Micruss Profil |
a zkoušel jsi to změnit např. z jinýho serveru (myslím cestu ke skriptu)... jestli to taky blbne
|
||
Chamurappi Profil |
#3 · Zasláno: 12. 11. 2013, 17:31:18
Reaguji na Micrusse:
Jak by cesta ke skriptu mohla mít na tohle vliv? Reaguji na hubiju: Tipnul bych si, že příčinou je, že používáš quirk a že uvedený skript je v <head> .
|
||
Micruss Profil |
#4 · Zasláno: 12. 11. 2013, 18:41:43
Chamurappi:
menší chyba.. špatně jsem to přečetl... |
||
hubija Profil * |
#5 · Zasláno: 12. 11. 2013, 19:36:38
Chamurappi:
skript respond.js je skutečně v <head> asi takto: <!-- DOCTYPE html --> <html.......> <script src= ceska ke skriptu> v čem je problém? |
||
Chamurappi Profil |
#6 · Zasláno: 12. 11. 2013, 19:48:44
Reaguji na hubiju:
„<!-- DOCTYPE html -->“ Jaký smysl má ten tento komentář? Tohle rozhodně není <!doctype> . Standardní režim se vyvolává jinak, viz můj odkaz výše.
|
||
hubija Profil * |
#7 · Zasláno: 12. 11. 2013, 20:02:32
Chamurappi:
četl jsem si článek a přečtu si jej raději ještě jednou... můj předchozí příspěvek říkal jen to co jsem našel při spuštění "nástroje pro vývojáře" v IE 8 - a jestli to chápu správně tak <!-- DOCTYPE html --> by podle přiloženého odkazu mělo znamenat záznam standardního režimu ne? |
||
Chamurappi Profil |
Reaguji na hubiju:
<!-- DOCTYPE html --> je obyčejný bezvýznamný HTML komentář.
<!DOCTYPE html> je deklarace, která umí zapnout standardní režim (je-li na začátku kódu).
Na lepší posouzení stavu tvého kódu by se hodil odkaz na živou ukázku. Dlouhý zhuštěný cizí kód přesné diagnóze moc nenapomáhá (já příčinu jen tipuji). |
||
hubija Profil * |
#9 · Zasláno: 12. 11. 2013, 20:37:37
omlouvám se nedošlo mi že to je poznámka... už jsem nějakej unavenej asi :-)
živá ukázka: www.ha-ma.cz dělal jsem teď úpravy s respond.js a sice se podařilo stránky otevřít, ale šlo to pouze velice pomalu a někdy se stejně nezobrazili. Takže jsem vrátil vše ke starému, tak aby popis problému opět seděl s realitou |
||
_es Profil |
#10 · Zasláno: 13. 11. 2013, 09:51:10
hubija:
Asi si si v tých „Nástrojoch vývojára“ prepol režim dokumentu na „Quirks“. U iných návštevníkoch asi chyba nenastáva. „V javaScriptu moc neumím“ Tak prečo si tam toho JavaScriptu toľko „nacápal“? Skontroluj si, či tam nejaké skripty nevkladáš dvojmo, minimálne pre jQuery to tak je. Prečo je zobrazenie stránky v IE závislé od JS, respektíve čo očakávaš, že návštevníkom prinesie použitie elementov ako header a article ?
|
||
hubija Profil * |
#11 · Zasláno: 13. 11. 2013, 10:30:00 · Upravil/a: hubija
_es:
V "nástrojích vývojáře" jsem určitě nic nepřepl a kdyby u jiných návštěvníků chyba nenastávala, tak bych problém neřešil. Osobně IE absolutně nevyužívám a kdyby mi právě nepřišla zpětná vazba, že se vyskytuje problém ve zmíňěném prohlížeči, tak by o problému ani nevěděl. hubija: a mimochodem nevím proč na většině fór 90% lidí neřeší samotný problém, ale jen dávají otázky a "rady" úplně mimo, nebo týkající se něčeho jiného. „V javaScriptu moc neumím“ jsem napsal přesně pro lidi jako jsi ty. Pokud mi nechceš nebo neumíš poradit, tak postrádá smysl vůbec psát nějaké komentáře. Právě proto jsem přišel sem, aby mi někdo zkušený poradil. Myslím si že fóra původně vznikali za účelem pomáhat si, nikoli k opaku. |
||
_es Profil |
hubija:
„V "nástrojích vývojáře" jsem určitě nic nepřepl“ V IE8 u mňa uvedená chyba nenastávala. Nastala až po prepnutí do režimu Quirks v „Nástrojoch vývojára“. Ešte som skúsil v hlavnom okne zapnúť „Režim kompatibilného zobrazenia“ a stránka teraz nejde načítať vôbec - neviem či to súvisí s tým, alebo si na stránke niečo zmenil. hubija: „jen dávají otázky a "rady" úplně mimo“ Režim „Quirks“ nie je rada „mimo“, nastáva v dôsledku toho presne tá chyba, ktorá nastáva aj u teba a tiež aj nefungujú „opravné“ skripty v IE na samoúčelné použitie nepodporovaných HTML elementov. Dvojité vloženie jQuery, ďalšiu možnú príčinu problémov, si sa ani nenamáhal opraviť. |
||
hubija Profil * |
#13 · Zasláno: 13. 11. 2013, 12:09:44 · Upravil/a: Moderátor (editace znemožněna) 13. 11. 2013, 15:41:10
Vím, že quirks není rada mimo, tím jsem myslel toto:
_es: „prečo si tam toho JavaScriptu toľko ‚nacápal‘?“ nechci se tu dohadovat, jen bych rád dostal radu co dělat z této mojí výchozí pozice s tím, co na stránkách mám. Nechci nikterak optimalizovat stránky pro IE, jen bych rád aby se bez chyb zobrazili, protože v momentě, kde tam příjde někdo cizí a nebodou fungovat zcela korektne, tak z nich raději odejde. Další věc která je fakt, je ta, že jsem s nástojem vývojáře skutečně nijak nemanipuloval - s celým IE 8 jsem nemanipuloval. Už jsem nechal otestovat na jeném PC zadli se na IE vyskytuje také chyba a vyskytuje. Se stránkami jsem v průběhu této diskuze nijak prozatím nemanipuloval, neboť jsem zde chtěl nechat prostor odborníkům a něchtěl jsem to komplikovat a ztěžovat mými někdy neodbornými postupy a tak proto, že jsem mimo dosah svého pc. „Asi si si v tých ‚Nástrojoch vývojára‘ prepol režim dokumentu na ‚Quirks‘.“ Qurrks jsem prostě v nástrojích nezapínal a něudělal to ani nikdo z mnou oslovených, kteří používají IE a nastala u nich stejná chyba. Z toho vyplívá, že musím opravit stránky do takové míry aby tatao chyba, minimálně u testovaných lidí, už nenastávala - nemůžu po nich chtít aby si "něco" "někde" přepínali. Jediná věc co jsem včera ještě zkoušel bylo upnují jiné verze respond.js viz: Moderátor Chamurappi: Odstraněn nekompletní zdrojový kód.
[#13] hubija patrně se mi nevložil celý příspěvek... ještě dopíšu [#13] hubija nevím, proč se nepřiložil zbytek mojí předchozí zprávy, ale ve zkratce, jelikož to dělám pro kamaráda jen ze známosti, neživím se tím, tak nejsem v tomto oboru odborník. Takže pokud mi někdo chce dát radu moc ji uvítám, zejména pokud bude podložená i nějakým stručným postupem... proto se přišel do této diskuze hubija ani celý zápis z respond.js se nepřiložil celý.. tak ještě jednou: Moderátor Chamurappi: Odstraněn kompletní zdrojový kód. V příspěvcích níže je na dotyčný soubor odkázáno.
|
||
Chamurappi Profil |
#14 · Zasláno: 13. 11. 2013, 13:29:26
Reaguji na hubiju:
„kdyby mi právě nepřišla zpětná vazba, že se vyskytuje problém ve zmíňěném prohlížeči, tak by o problému ani nevěděl“ To jsi při vší úctě docela lajdák, že si stránku sám ani nevyzkoušíš ve všech používaných prohlížečích. Kdybys kontroloval své dílo průběžně ve všech prohlížečích, nedostal by ses do takhle hloupé pozice, že musíš hledat chyby dodatečně. Nervi sem prosím dlouhé zdrojáky, nejsme pastebin. Chceš-li nám ukázat nějaký kód skriptu, proč na něj prostě neodkážeš? Zdrojáky vkládej až v případě, že budeš vědět, kde je chyba — a vložíš jen ten kus, kterého se chyba týká. Co si představuješ, že s tímhle flákem, který se ti navzdory úmyslnému limitu na délku příspěvku povedlo vložit, uděláme? Není to ani naformátované… Podíval jsem se na tvoji stránku v Exploreru 8 a sestřelila mi prohlížeč, proces iexplore.exe spadnul. Takže popisovanou chybu jsem neviděl kvůli této závažnější. Nevím, co ji způsobuje, ale nastává mi při každé návštěvě webu www.ha-ma.cz. „nevím proč na většině fór 90% lidí neřeší samotný problém“ Upekl jsi stokrát dobrý dort a nyní se divíš, že některé přísady strávníkům nešmakují (případně je rovnou vraždí). Otázka, proč jsi přidal tolik přísad, je na místě, byť trochu nepříjemná. Představa, že si teď nějaký odborník k tomu sedne, čtyři hodiny bude číst všechny skripty řádek po řádku a pak zvolá „heuréka, může za to řádek 8472“, je velice naivní. To bych nejspíš nechtěl dělat ani za peníze. Má nejlepší možná rada zní: Odmazávej. Až odmažeš blok, který chybu způsobuje, chyba zmizí. Můžeš vyjít z předpokladu, že samotný respond.js problém nezpůsobuje, ten nemaž. Jsem ochotný ti v průběhu následujících pěti hodin říkat, jestli padání v mém Exploreru 8 přetrvává. (Ačkoliv tedy není jisté, že má sestřelení stejnou příčinu jako zmíněná JS chyba.)
Možná ti dá někdo lepší radu. |
||
hubija Profil * |
#15 · Zasláno: 13. 11. 2013, 13:56:40
Chamurappi:
„To jsi při vší úctě docela lajdák, že si stránku sám ani nevyzkoušíš ve všech používaných prohlížečích.“ právě proto, že nejsem lajdák jsem poslal odkaz na web mým kamarádům s tím, ať se kouknou jesrli se jim tato stránka zobrazuje správě, protože ze zkušenosti vím, že se občas stane ža na jednom PC s několika prohlížeči vše funguje a na druhém nikoliv. Stránky jsou sice v "ostrém" viditelném provozu, ale rozhodně je nepovažuji za dodělané. „Nervi sem prosím dlouhé zdrojáky, nejsme pastebin. Chceš-li nám ukázat nějaký kód skriptu, proč na něj prostě neodkážeš?“ Myslel jsi to takto?: http://ha-ma.cz/wp-content/themes/flozo/assets/scripts/respond.js „sestřelila mi prohlížeč, proces iexplore.exe spadnul“ Ano právě tento problém od samého začátku řeším - při volbě " hledat řešení online" IE8 hledá problém a nakonec stránku zobrazí... ve stavovém řádku je ikona s vykříčníkem, po kliknutí se oběví okno, kde je napsaná lokace chyby. Viz můj předchozí příspěvěk. Pro jistotu uvedu ještě printscreen: [img] [/img] „Můžeš vyjít z předpokladu, že samotný respond.js problém nezpůsobuje, ten nemaž.“ V tom případě nevím odkud bych měl mazat |
||
Micruss Profil |
hubija:
zkus odstranit všecky kódy JS a postupně je tam zase vracej a zároveň to testuj na IE a uvidíš jestli to vůbec zaviňuje js... ;-) a taky nejspíš v jakým souboru bo kodu je chyba |
||
hubija Profil * |
#17 · Zasláno: 13. 11. 2013, 17:48:26
Micruss:
Supr diky, zkusim to :) |
||
Časová prodleva: 10 let
|
0