Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Igen, minden egyes topicban ez a szokásos érv, és erre is vonatkozik, hogy legyenek ösztönözve a fejlesztők és felhasználók egyaránt. (Igen, tudom, hogy vannak kifejezetten ActiveX-es szarságok, meg a többi mesét, már elég sok topicban ki lett vesézve, miért vannak egyes nagy cégek IE-hez kötve... Ezek tudatában írtam, amit írtam. Büntetőjogi felelősségem teljes tudatában, és józanul. )
Sk8erPeter
-
martonx
veterán
Azért mostanra a nagyok is egyre kevésbé használnak Ie8-at. Nálunk is jövőre fog a cég kompletten átállni win7-re, ami magával hozzá, hogy az akkor elérhető legfrissebb Ie-re is váltunk. És szerintem mi így is a későn váltók között vagyunk, azaz szvsz elmondható, hogy legkésőbb 2014-re az Ie6-8 kompletten kikopik.
Én kérek elnézést!
-
fordfairlane
veterán
válasz martonx #2202 üzenetére
Az IE6-7-8-ban az IE8 kivétel, az elterjedtsége okán. Windows XP-re nincs újabb.
Aki nem vált alternatív böngészőre (már pedig különféle okokból, de sokan nem váltanak), annak az IE8-cal lezárul a frissítési időszak egészen addig, amíg nem cserélni le magát a rendszert. Az pedig nagyon sok esetben csak hardvercserénél történik meg.
Ez egy nagyon is reális use-case, amit nem lehet figyelmen kívül hagyni.
[ Szerkesztve ]
x gon' give it to ya
-
martonx
veterán
válasz fordfairlane #2203 üzenetére
Nem, de 2014-től már az XP sem támogatott. Azaz aki 2014-ben még XP-t használ, az magára vessen. Ez lesz az utolsó év, amikor a nagyvállalatok is végleg elhagyják az XP-t.
Én kérek elnézést!
-
Speeedfire
nagyúr
válasz fordfairlane #2203 üzenetére
Már, hogy ne lenne IE9 xp alatt?! Csak sz*rnak frissíteni. Nálunk is a cégnél ff xyz (esr?) verzió és IE8 amin mennie kell mindennek.
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Karma
félisten
válasz Speeedfire #2205 üzenetére
Nincs IE9 XP-re. Ha meg valaki rá is hákolja, azt egy nagyvállalat IT-jén nem nyomod át.
“All nothings are not equal.”
-
ahetaton
csendes tag
Sziasztok!
Hogy lehetne azt megoldani, hogy ráviszem div1-re az egeret, és div2 módosul?
Mert jelen állapotban ez a kód olyan mint a CSS-hover.
Nekem viszont arra lenne szükségem, hogy az oldal más divei is módosuljanak, ha az egyik menüpontra viszem az egeret.Ez a kódom:
<html>
<head>
<title>Teszt</title>
<script type="text/javascript"
src="js/jquery-1.9.1.min.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$('div').hover(
function () {
$(this).css({"background-color":"red"});
},
function () {
$(this).css({"background-color":"blue"});
}
);
});
</script>
<style>
.div{ margin:10px;padding:12px;
border:2px solid #666;
width:60px;
}
</style>
</head>
<body>
<p>Move mouse on any square below to see the result:</p>
<div class="div" style="background-color:blue;"></div>
<div class="div" style="background-color:blue;"></div>
<div class="div" style="background-color:blue;"></div>
</body>
</html>Előre is köszönöm a segítséget!
-
Sk8erPeter
nagyúr
válasz ahetaton #2208 üzenetére
Itt MINDEN div hover állapotát módosítod JS-sel, nem csak azokat, amik a fantáziadús "div" class-névvel vannak ellátva. Ha utóbbit szeretnéd, akkor a selectorod $('div') helyett legyen $('.div').
$('div').hover(
function () {
$(this).css({"background-color":"red"});
},
function () {
$(this).css({"background-color":"blue"});
}
);ez pontosan megfelel ennek a CSS-kódnak:
div {
background-color:blue;
}
div:hover {
background-color:red;
}Amit CSS-ben meg lehet oldani, azt soha NE JavaScripttel oldd meg! Ezenkívül kerüld az inline style-attribútum használatát, tehát a HTML-kódod csak ennyi legyen (nincs style-attribútum):
<p>Move mouse on any square below to see the result:</p>
<div class="akarmi"></div>
<div class="akarmi"></div>
<div class="akarmi"></div>
Éppen ezért ha pl. háttérszínekről és hasonló stílusmódosításokról van szó (amit CSS-sel meg lehet oldani), akkor érdemes inkább csak class-okat hozzáadni és elvenni adott elemektől, de egyébként mindent CSS-ben megadni.Ha pedig azt szeretnéd, hogy változzon egy másik div, ha egy adott div föléviszed az egeret, pl. adj id-t a forrás- és céldivnek, és valahogy így módosítsd (itt láthatod, hogy csak class-t adok hozzá, ill. veszek el):
Ha valamelyik része nem tiszta, kérdezz vissza nyugodtan.
Sk8erPeter
-
ahetaton
csendes tag
válasz Sk8erPeter #2209 üzenetére
Tökéletes. Köszönöm!
-
Speeedfire
nagyúr
Kendo UI féle grid-ből létezik másik alternatíva ami json adatokból tud táblázatot készíteni, lehet editálni és templétezni?
Elsőre jónak tűnik ez a kendo, csak félek, hogy komplex táblánál akadályokba fogok vele ütközni.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Sk8erPeter
nagyúr
válasz Speeedfire #2211 üzenetére
Miért, ezzel mi a gond? Nekem bejövős, megnéztem a code sample-öket, elég jónak tűnik.
(#2210) ahetaton : szívesen.
[ Szerkesztve ]
Sk8erPeter
-
Speeedfire
nagyúr
válasz Sk8erPeter #2212 üzenetére
Egyelőre semmi. De meg szeretném nézni mik az alternatívák. Melyik mit tud, mennyire gyors. Lényegében össze lesz kötve a yii-vel és a knockout-tal és nem akarok belefutni valamibe, ami miatt nem tudok pl validálni yii-vel.
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Még mindig grid téma. Nézem az a ko KoGrid-et, de semmi api-t nem találok hozzá. Én vagyok a béna vagy tényleg nincs grid?
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
martonx
veterán
válasz Speeedfire #2211 üzenetére
jqgrid, jqwgrid, datatables hogy hirtelen soroljak párat.
Kendo UI gridje a legjobb, de figyelem az keményen fizetős cucc!!!
jqgrid rengeteget tud, de nagyon fos a layout-ja
jqwgrid jól néz ki, könnyen skinezhető, ingyenes is lehet, de a tudása, API-ja egy kicsit kevéske. Ettől függetlenül én jelenleg ezt használom többfelé is, mert egy elég jó kompromisszum. Egy böszem nagy állat, a komplett jqwidget js file minimalizálva 1.4 Mb, de ez intraneten nem gond
datatables a legfapadosabb mind közül, cserébe nagyon könnyűsúlyú, és jól testre szabhatóm kinézetilag is agyonformázható.Szvsz szégyen, hogy nincs egy normális kvázi szabvány grid a jquery UI-ban.
Én kérek elnézést!
-
Speeedfire
nagyúr
válasz martonx #2215 üzenetére
Köszi megnézem ezeket!
1.4MB nem vészes, amúgyis csak 1x húzza be.
Amúgy a sima kendo UI web ingyenes GPL3-as. De eddig amiket néztem a kendo volt a legjobb, arról nem is beszélve, hogy a kendo alapból tudja pl amit a knockout. Szóval elég f*sza UI.A jquery UI tényleg egy botrány...
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
martonx
veterán
válasz Speeedfire #2216 üzenetére
Azért olvasd már el a GPL3-at
Nem hiszem, hogy te az open source közösségnek csinálod a weboldalakat, és minden forráskódodat tolsz ki publikusan mondjuk a github-ra...Én kérek elnézést!
-
trisztan94
őstag
Sziasztok!
Hogy lehet a legtisztábban dinamikusan beilleszteni a head-be css-t egy bizonyos css fájl után?Explanation:
Firefoxban teljesen szétesik az oldal dizájnja, így, mivel ma van a határidő úgy gondoltam lecsekkolom, hogy firefox-e a böngésző, ha igen, akkor a firefox.css-t rakom be, ha nem, akkor pedig a style.css-t. Érdekes módon még IE9-ben is jól jelenik meg az oldal, csak a FF b@szakodik..
A head-ben az első css-em a normalize.css, ezért az után kéne belerakni.Dánke sőn!
Szerk:
IE9-ben mi az istenért nem működik az ajax lapoztatás?! Chrome-ban, FF-ban tökéletesen megy, ebben a fosdarabban viszont csak betölti - nem ajaxolva - (sőt, le akarja tölteni) az adott html/php fájlt. Kezdek ideges lenni[ Szerkesztve ]
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2220 üzenetére
Még régebben létrehoztam 3 függvényt ilyesmire, most előkotortam:
/**
* Inject a stylesheet
*/
function injectCssFile( css_filename ){
var
headID = document.getElementsByTagName("head")[0],
cssNode = document.createElement('link');
cssNode.type = 'text/css';
cssNode.rel = 'stylesheet';
cssNode.href = css_filename;
cssNode.media = 'screen';
headID.appendChild(cssNode);
}
/**
* Load external CSS file with jQuery
*/
function loadCssFile ( css_url ){
$('head').append( $('<link rel="stylesheet" type="text/css" />').attr('href', css_url) );
}
/**
* Inject some inline CSS
*/
function injectInlineCss( inlineCssContent ){
var head = document.getElementsByTagName('head')[0],
style = document.createElement('style'),
rules = document.createTextNode( inlineCssContent );
style.type = 'text/css';
if(style.styleSheet){
style.styleSheet.cssText = rules.nodeValue;
}
else {
style.appendChild(rules);
}
head.appendChild(style);
}A második nem emlékszem, működőképes-e, a többi viszont úgy rémlik, jól működött.
Az injectCssFile() és a loadCssFile() tehát bepakol egy új CSS-fájlt, az injectInlineCss() pedig egy <style>-tagen belülre bepakol egyéb stílusokat, amiket átadsz neki (sringként kell átadni, <style> tag nélkül).
.appendChild()-ot használok, tehát a <head> legvégére rakja, így garantált, hogy utolsó csomópontként fog szerepelni, amíg hozzá nem adsz újat.Az AJAX-os problémához látni kéne a kódot.
[ Szerkesztve ]
Sk8erPeter
-
trisztan94
őstag
válasz Sk8erPeter #2221 üzenetére
Köszönöm szépen, pont erre volt szükségem!
Itt az ajax kódom, mint előbb írtam ez nem működik IE9 alatt egyáltalán.
$('nav ul li a').on('click', function () {
loadURL(this);
return false;
});
function loadURL(clicked) {
var elem = $(clicked);
$(elem).each(function () {
var url = $(clicked).attr('href');
console.log("Ajax kérés:" + url);
if (url == "index.html") {
var indexurl = url + " #content";
$('#content').load(indexurl, function () {
$('.gold').css('left', '1.5em');
});
} else if (url == "szolgaltatasok.html") {
$('#content').load(url, function () {
$('.gold').css('left', '18.5em');
});
} else if (url == "galeria.php") {
$('#content').load(url, function () {
$('.gold').css('left', '35.5em');
Galleria.loadTheme('galleria/themes/classic/galleria.classic.min.js');
Galleria.run('#galeria');
});
} else if (url == "kapcsolat.html") {
$('#content').load(url, function () {
$('.gold').css('left', '50.5em');
google.load("maps", "3", {
other_params: 'sensor=false',
callback: function () {
var mapOptions = {
center: new google.maps.LatLng(47.501272, 19.064841),
zoom: 16,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("kapcsolatokTerk"),
mapOptions);
}
});
});
} else if (url == "gyik.html") {
$('#content').load(url, function () {
$('.gold').css('left', '65em');
});
}
});
}Benne hagytam mindent, hátha valamit nem szeret az IE és azért nem fut le. Console nem jelez error-t.
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2222 üzenetére
Szívesen!
Ezt most nem értem, miért kell ide az .each()? Szerintem itt tök felesleges, szedd ki.
Másik, hogy itt a loadURL()-en belül neked egyedül az URL-re van szükséged, amit a href-attribútumból szedsz - akkor miért nem csak azt passzolod át a függvénynek?
Harmadik, hogy a sok-sok okádék if-else helyett cseréld le switch-case-ekre az eseteket, máris átláthatóbb lesz a kód.
Most hirtelen nem látom a parát, IE9-em sincs (direkt meghagytam a fostos szar IE8-at tesztelés céljára, úgyse használom soha, ha nem kell tesztelni), de egész pontosan mi történik? Nem jelez hibát, de nem történik semmi? Ha debuggolás céljára a callback-ekbe beleraksz valami kiíratást, akkor mi történik? Próbáltad már a sima $.get() vagy $.ajax() fv.-ekre lecserélni próba erejéig?Sk8erPeter
-
trisztan94
őstag
válasz Sk8erPeter #2223 üzenetére
Na most nem igazán tudom, hogy mi történik. Beraktam a click eseménybe egy alertet, az lefutott, utána futott is szépen az ajax, jött is a console.log eredménye. Kiszedtem az alert-et, továbbra is működik, bár rögtön összeomlik a galleria és a google maps (apiv3) plugin..
Ha visszarakom az alertet megy mindkettő szépen.
Miért létezik ez a böngésző?Ide akartam írni valamit amivel védem a .each-emet, de semmit sem tudok. Miért raktam én azt bele?
Eleinte csak egy darab if volt, aztán bővült a kínálat else if-ekkel, gondolkoztam már a switch-é alakításukon, ha minden patent lesz akkor meg is csinálom majdhttps://heureka-kreativ.hu
-
Jim-Y
veterán
válasz Sk8erPeter #2223 üzenetére
Nekem már volt olyan problémám, hogy IE-ben nem működött a forEach ciklus, próbáltam kikeresni, hogy a jQuery.each hogyan lett implementálva, esetleg lehet azzal van baja, bár nem hiszem, csak gondoltak erre a fejlesztők.
-
Sk8erPeter
nagyúr
válasz trisztan94 #2224 üzenetére
Várj, és a debugger konzol minden esetben meg volt nyitva? Mert az IE8 pl. azt írja, hogy "'console' is undefined", amennyiben nem nyomtam F12-t az oldal betöltése előtt. (Ha nyomtam, akkor okés.) De lehet, hogy rohadtul nincs semmi összefüggés, de próbáld már ki, mi van, ha azt kikommentezed. Bár feltételezem, IE9-nél ezt már megoldották.
Csak hogy megmutassam, mire gondolok:
A többit most látni kéne, mert így nem vágom.Nesze, megfelelő regexppel plusz némi manuális buzerálással úgy 30 másodperc volt átírni
amúgy konkrétan úgy, h Notepad++-ban regexp: \} else if \(url == (\".+\")\) \{
csere erre: case \1:
aztán breaket kimásoltam, majd a megfelelő sorokba bedobáltam Ctrl+V-vel, aztán jsFiddle-lel formáztam.
A loadot meg felesleges mindegyik esetben ismételgetni, így egyszerűbb sztem (kiszedtem a hrefes szarságot, meg az eachet):function loadURL(url) {
var $goldStuff = $('.gold');
if (window.console) {
console.log("Ajax kérés:" + url);
}
if (url === "index.html") {
url += " #content";
}
$('#content').load(url, function () {
switch (url) {
case "index.html":
$goldStuff.css('left', '1.5em');
break;
case "szolgaltatasok.html":
$('#content').load(url, function () {
$goldStuff.css('left', '18.5em');
});
break;
case "galeria.php":
$goldStuff.css('left', '35.5em');
// ha a galeria.php-ra többször is kattintasz, mindig betöltődik, vagy van erre megoldás a pluginben?
Galleria.loadTheme('galleria/themes/classic/galleria.classic.min.js');
Galleria.run('#galeria');
break;
case "kapcsolat.html":
$goldStuff.css('left', '50.5em');
// ez itt minden ráklattyolás esetén betöltődik, jó az??!
google.load("maps", "3", {
other_params: 'sensor=false',
callback: function () {
var mapOptions = {
center: new google.maps.LatLng(47.501272, 19.064841),
zoom: 16,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("kapcsolatokTerk"),
mapOptions);
}
});
break;
case "gyik.html":
$goldStuff.css('left', '65em');
break;
}
});
}beleraktam egy if(window.console)-t, hogy ellenőrizve legyen, van-e egyáltalán olyan (pl. IE8-ban b@szik működni a kódod, ha ez bent marad)
Belekommenteltem a kódba, hogy biztos jó az, hogy minden alkalommal, amikor a kapcsolat.html-re kattintanak, akkor a google.load()-dal betöltődik a fájl? Vagy a google.load() tartalmaz ellenőrzést, hogy be vannak-e töltve már a megfelelő dolgok? Ezt nem vágom.
Aztán ott a Galleria.loadTheme - ezt megoldották, hogy ez ne töltődjön be többször?
Amúgy konkrrétan melyik menüpontokra kattintva fordul elő a para?[ Szerkesztve ]
Sk8erPeter
-
trisztan94
őstag
válasz Sk8erPeter #2226 üzenetére
Nem volt nyitva kb sosem a debugger console, de hibát sem jelzettl. Azért elég gáz lenne, ha benne hagyták volna
Tényleg szép a kód, de nekem elszáll tőle az ajax. A console log-olja a kérést, de sem a gold nem változtatja helyét, sem a tartalom nem változik
Mindjárt csinálok majd egy videót a történetről!
A kapcsolatnál.. hát igen, minden egyes kattintáskor betölti a google maps-ot, nem éppen a legszebb megoldás.. ugyanez vonatkozik a galleria pluginra is. Igazából még nem sikerült rájönnöm, hogy hogy tudnám előre betölteni ezeket egy még jelen esetben nem létező div-re. (Ugye a #galeria a galeria.php része, a #kapcsolatokTerk meg a kapcsolatok.html fájlé). Ezért is raktam callback-be.
Konkrétan csak ennél a kettőnél jön elő a gond, a galéria ill. a kapcsolatoknál.Szólj ha fenn vagy, akkor megváltoztatom a kódot arra amit te írtál és meglesheted live (fent van atw-n, de ha a megrendelőm megnézi és nem megy mérges lesz )
https://heureka-kreativ.hu
-
Speeedfire
nagyúr
válasz martonx #2218 üzenetére
Ez a jqGrid lesz a befutó szerintem. Lehet editálni, rendezni, json-ből renderelni. Szóval jó lesz szerintem.
Bár még mindig zavar, hogy a koGrid-hez nem találok api-t.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Sk8erPeter
nagyúr
válasz trisztan94 #2228 üzenetére
"Azért elég gáz lenne, ha benne hagyták volna"
Miért, Te még ott tartasz, hogy nem tudsz elképzelni mindenféle rosszat az IE fejlesztőitől?"nekem elszáll tőle az ajax"
Mi az, hogy "elszáll" az AJAX? Az milyen? Mindenesetre nem derült ki túl sok abból, hogy mi az oka, meg debuggoltál-e, meg létrehoztad-e a var $goldStuff változót (elég gyökér név lett, de nem tudom, mi nálad az a .gold ), és így tovább. Amúgy most jövök rá, nem igazán értem, az index.html"-nél minek kell neked a plusz selector, de gondolom ha működik más böngészőben, akkor működik, azt jóvan.
Ja, és elb@szarintottam, most látom, a szolgaltatasok.html-ben benne maradt a load()! Azt szedd ki onnan a francba, az biztos, hogy hiba. Hát igen, éjfélkor ilyenek már nem nagyon tűntek fel."Igazából még nem sikerült rájönnöm, hogy hogy tudnám előre betölteni ezeket egy még jelen esetben nem létező div-re"
Nem arról beszéltem, hogy töltsd be a térképet és a többit is előre egy divbe, aztán rejtsd el, hanem arról, hogy a szükséges fájlokat csak EGYSZER töltsd be. A FÁJLOKAT. A google.load() elvileg lazy loadra való, tehát aszinkron betölti a fájlokat, de ezt csak egyszer kéne betöltenie. Erre mondtam, hogy lehet, hogy beépítették a google.load()-ba az ellenőrzést, hogy ne töltődjön be többször, nem néztem utána.SZERK.:
na, most utánanéztem:
https://developers.google.com/loader/"Subsequent calls to load the Maps API will immediately execute the provided callback, so you don't have to worry about loading the same API more than once"
Szóval nem para!
Egyből a callback fog meghívódni a következő google.load()-nál, tehát ha valaki még egyszer rákattint arra a menüpontra.[ Szerkesztve ]
Sk8erPeter
-
trisztan94
őstag
válasz Sk8erPeter #2230 üzenetére
"Mi az, hogy "elszáll" az AJAX? Az milyen?"
Olyan, hogy nem működik
Igen, debugoltam, de 0 error, a variable is létre van hozva"nem igazán értem, az index.html"-nél minek kell neked a plusz selector"
Hát mert ugye a #content div-be töltjük be az új tartalmat. Alapból az index.html-t hozza be és ott alapból a főoldal van, tehát a content div-ben van már valami. Na most, ha nem rakom oda a selector-t, akkor a #content div-be betölti ajaxxal az egész oldalt. Tehát nem csak a #content div tartalmát, hanem az egész oldalt fejlécestül, navigációstul.
A többi fájlban meg nincs benne a header a nav meg ezek ugye, ezért oda nem kell selector. Ez mondjuk elég nagy kib@szás a js nélküli böngészőkkel, mert ott nem megy az oldal, de én nem fogom arra a 0.5%-ra optimizálni a dolgot. 15k ennyit nem ér megSelector nélkül a fentebb leírt betöltési bug:
Itt egy videó a dologról. Itt még nem szedtem ki a szolgáltatások.html alól a .load()-ot, de kiszedve is ugyanaz a helyzet.
[ Szerkesztve ]
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2231 üzenetére
De bakker, miért csodálkozol ha nem működik az a függvény, amit küldtem neked, ha nem változtattad meg az eredeti koncepciódat, ahogy mondtam?
1. nem szedted ki az .each()-et, pedig felesleges
2. az én módosított loadURL függvényem csak egy STRINGET vár paraméterként, NEM pedig egy jQuery-objektumot, ahogy a tiéd! Ahogy írtam korábban, ott is tök felesleges jQuery-objektumot átadni, mivel csak egy URL az érdekes abban a függvényben, tehát ne egy this-t adj át, hanem CSAK a href-attribútumot.Egy függvény csinálja mindig pontosan azt, ami a dolga, ne többet, ne kevesebbet!
Miért töltöd be JS-sel a CSS-fájlt? Korábban azt hittem, csak apróbb módosítás kell valamiért, de a teljes layoutot JS-sel betölteni? Kipróbáldtad már, hogy néz ki az oldalad JS nélkül?
A videódon kapásból feltűnt az a ronda villódzás, ami pont amiatt van, hogy később töltöd be a stylesheetet. Ez ugyanígy jelentkezne, ha a <link> taggel az oldal forráskódjának legvégére pakolnád be a stylesheetet. Ezt mindenképp oldd meg, mert ez szerintem nem csak nálam b@ssza ki a biztosítékot. De azért az gáz, hogy a stylesheeted IE8 alatt még csak be sem töltődik, akármennyire is nem tartjuk azt normális böngészőnek. FOGJÁK IE8 alól böngészni az oldaladat, számíts arra. Még rosszabb, ha a megrendelőd látja meg IE8 alól.Ja, és a console.log()-os hibát én annak idején így oldottam meg, hogy olyan böngészőben se "szálljon el" a console.log-olás, ahol nem működőképes ez a függvény:
var alertFallback = false;
if (typeof console === "undefined" || typeof console.log === "undefined") {
var console = {};
if (alertFallback) {
console.log = function (msg) {
alert(msg);
};
console.error = console.trace = console.log;
} else {
console.log = function () {};
console.error = console.trace = console.log;
}
}Az alertFallback változóval azt tudod beállítani, hogy ha nem működik a console.log(), akkor helyettesítődjön alert()-re - ezt defaultból false-ra raktam, nekem ne dobáljon alert()-ablakokat.
Nem tűnt fel még amúgy az a PHP-s hiba, ami a galéria betöltésekor jól látszik a videódon is? Előbb talán azt kéne megoldani.
Amúgy a térképed erősen el van csúszva.
[ Szerkesztve ]
Sk8erPeter
-
spammer
veterán
válasz trisztan94 #2231 üzenetére
Melyik Sublime Text színsémát használod? Ez a Monokai?
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
trisztan94
őstag
válasz Sk8erPeter #2232 üzenetére
"nem szedted ki az .each()-et, pedig felesleges"
Azért nem szedtem ki mert a tiedet használnám és egy az egyben kiszedném az enyémet
"az én módosított loadURL függvényem csak egy STRINGET vár paraméterként"
Na ezt nem láttam, ez egyik nagy hibám Nem nagyon tudom olvasni mások függvényeit, hogy mit akartak vele. Remélem majd javul ez
"Miért töltöd be JS-sel a CSS-fájlt?"
Nagyon sok minden el van csúszva firefoxban sajnos, a fő layout elemek nem ugyanakkorák, betűméret, pozicionálások. Meg ha már külön css-t töltök be firefoxra akkor a gradienteket is átírom abban a stylesheet-ben csak -moz*-ra, ne lassítsa feleslegesen a böngészőt a többi. Ugyanez a -webkit*-es stílusnál, onnan meg a -moz* dolgokat szedtem ki..
Amúgy nagyjából a többi ugyanúgy néz ki, azt nem is változtattam meg, sima @import-tal beimportáltam mindkét layout fájlba azokat amik megegyeznek.
Ezt hogy kéne megoldani? Én arra gondoltam, hogy alapból a webkites stílus lenne betöltve, aztán csekkolom, hogy firefox-e a böngész, ha igen akkor lecserélem. Vagy ez így is ronda?"Kipróbáldtad már, hogy néz ki az oldalad JS nélkül?"
Ki. Mondtam is a megrendelőnek, hogy js-heavy oldalt csinálok, így aki nem használ js-t az vessen magára, 15.000-ért nem fogok mindent támogatni. Persze ha a 10 szerese lenne a kp, akkor nyilván
Max azt fogom, hogyha nincs js bekapcsolva szólok a usernek, hogy ez így nagyon nem jó, kapcsolja szépen be, vagy szedjen le egy normális böngészőt.."a stylesheeted IE8 alatt még csak be sem töltődik"
Hát sajnos ezt nincs módomban tesztelni. Nem lehet valahogy azt is felrakni a 9 mellé? Esetleg még a hatot?
Miért nem töltődik amúgy be? Migrate plugint használok a browser detect-re.
Sőt, elvileg, mivel else ágban van a webkit stylesheet mindenképp be kell töltődnie, akkor mi az isten baja van?!"Nem tűnt fel még amúgy az a PHP-s hiba, ami a galéria betöltésekor jól látszik a videódon is?"
De, már javítottam. Még egy korábbi galériából maradt a json header."Amúgy a térképed erősen el van csúszva."
IE alatt csak, nem? Ezt modntam is a megrendelőnek.. Mondtam, hogy ha ad még egy napot megcsinálom rá az optimizációt (bár a szerződésbe világosan leírtam, hogy ie-t nem támogatok csak minimális szinten, tudja is)Szerintem inkább a console.log-ot kiveszem, így nincs para vele, amúgy is csak debug szerepe volt.
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2234 üzenetére
Na és azóta sikerült a módosított fv.-nyel?
"Meg ha már külön css-t töltök be firefoxra akkor a gradienteket is átírom abban a stylesheet-ben csak -moz*-ra, ne lassítsa feleslegesen a böngészőt a többi. Ugyanez a -webkit*-es stílusnál, onnan meg a -moz* dolgokat szedtem ki.."
Mi? Nem értem. Most olyan CSS3-as dolgokra gondolsz, amik nem működnek jól -moz, ill. -webkit-előtagok nélkül? Melyek ezek?
Az meg nem érv, hogy "ne lassítsa a böngészőt", nem pont a stylesheet fog lassítani... rengeteg stíluselemet tölt be egy CMS is, aztán mégsem lassul be a böngésző tőle.
Eleve ott kezdődik, hogy miért böngészőspecifikusan adod meg a stílusokat? NAGYON kerülendő, de ha így is van, akkor úgy szokás, hogy egymás alá írod a fallback-eket, hogy minden böngészőnél jól jelenjen meg.
Sokszor érdemes ezekre valami generátort használni, hogy ne neked kelljen baszkodni ezek megírásával. Csak egy példa a számtalanból:
http://www.css3maker.com/css3-transition.html
Csak bekattintod a megfelelő opciót, aztán odarakja neked a mindenféle potenciálisan szükséges előtagot. MINDET másold be a stílusfájlodba, és ne korlátozd webkites vagy más motorra. Működjön lehetőleg a legtöbb böngésző alatt. Attól még, hogy az IE-t kevésbé támogatod, nem jó hozzáállás egyre jobban szűkíteni a támogatott böngészők körét.
Szóval ne csinálj külön FF-stílusfájlt, meg külön Webkiteset, semmi értelme, az ilyen előtagos dolgok is legyenek egy helyen, így egyből látszik a cross-browser kompatibilitás is, meg könnyű módosítani."Mondtam is a megrendelőnek, hogy js-heavy oldalt csinálok, így aki nem használ js-t az vessen magára"
Azért ez nem ilyen egyszerű.
Sokszor érzem azt, hogy manapság az emberek átesnek a ló túlsó oldalára, túlzottan elkényelmesednek. Nem értek egyet azzal a hozzáállással, hogy elég a csak JS-alapú felület. Például a SEO-val mi lesz? Nagyon nem mindegy, a Google keresőrobotja mit lát.
Chrome-hoz itt van egy nagyon jó extension a JS ki-bekapcsolgatására oldalspecifikusan (nem globálisan!):
https://github.com/maximelebreton/quick-javascript-switcher
De a lényegre visszatérve az teljesen degenerált dolog, hogy komplett stílusfájlokat JS-sel töltesz be.
Eleve a CSS-fájloknak a headben elöl kell lenniük, mindenféle script előtt (az sztem kábé tök mindegy a renderelés szempontjából, hogy meta-tagek előtt vagy után van).IE-tesztelős móka:
http://my-debugbar.com/wiki/IETester/HomePage"IE alatt csak, nem?"
NEM, Chrome: http://i.imgur.com/oMh3ZM9.png. Ja de most jövök rá, hogy nem is elcsúszva van, hanem az a baj, hogy egy miniatűr pici fos csík.Gondolom emiatt a méretmegadás (em) miatt:
#kapcsolatokTerk {
width: 100%;
height: 11em;
}"Szerintem inkább a console.log-ot kiveszem, így nincs para vele, amúgy is csak debug szerepe volt."
Persze, ezt mindenképp érdemes, csak ha neadjisten IE8 alatt kell tesztelni, akkor rohadt idegesítő, hogy ott pattog a console hiánya miatt, ezért jó ez a workaround. De ez tényleg a legkevésbé fontos.
Inkább a fentieket oldd meg.[ Szerkesztve ]
Sk8erPeter
-
trisztan94
őstag
válasz Sk8erPeter #2235 üzenetére
Bocsi, hogy csak most válaszolok, volt egy kis dolgom
"Mi? Nem értem. Most olyan CSS3-as dolgokra gondolsz, amik nem működnek jól -moz, ill. -webkit-előtagok nélkül?"
Ezek a legkisebb dolgok. A design több eleme (boxok, navigációs terület, logó) teljesen elcsúsztak, máshol voltak, ezért csináltam a külön css-t firefoxra, hogy ott is szépen jelenjen meg. De ha már ugye csináltam egy külön design-t FF-ra, akkor biztos, hogy azt más böngésző nem fogja használni, így kivettem belőle a -webkit* ill. más előtagos sorokat. (mert ugye én is egy gradient generatort használtam, az meg belerakta az ie, opera, webkit előtagokat is, így azokat kiszedtem)
"...a SEO-val mi lesz?"
Nem kérek SEO optimizálást az oldalhoz, így az etéren teljesen lényegtelen. Meg amúgy is, egyre több autómatikus SEO motor létezik ami magától berakja a dolgokat az oldalba (hidden div-be asszem, rég használtam)
Egy példa rá: [link]"Chrome-hoz itt van egy nagyon jó extension a JS ki-bekapcsolgatására"
Pont ilyet kerestem Köszönöm!
"Eleve a CSS-fájloknak a headben elöl kell lenniük, mindenféle script előtt"
Esetleg ha átírnám a függvényt amit küldtél arra, hogy a <head> legelejére rakja a css fájlt akkor jobb lenne?
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2236 üzenetére
"Esetleg ha átírnám a függvényt amit küldtél arra, hogy a <head> legelejére rakja a css fájlt akkor jobb lenne?"
Jaja, de akkor már document.write-tal kéne kiíratni a <link> taget (nem a fv.-nyel), ha nagyon muszáj, de még mindig nem indokolt, hogy kiszedd a webkites meg többi előtagot, ugye vágod, hogy a böngésző egyszer betölti a CSS-fájlt cache-be, és aztán onnan szedi, magyarul tök mindegy, hogy akár párszáz kilobájttal több a fájl...?!
Egyébként akkor már jobb lenne - ha már ennyire muszáj - szerveroldalon detektálni a böngészőt, és úgy hozzácsapni még egy "firefox" class-t a body-hoz, vagy hasonló, és a stílusfájlba úgy berakni a meghatározásokat, hogy .firefox #mydiv { ... }, de mondom, ez mindenképp gány megoldás így...Most nem nagyon néztem meg, az általad linkelt SEO-s kiegészítés pontosan hogyan működik úgy, hogy nem kell módosítanod az oldalad kódját, de én nem is komoly keresőoptimalizálásra gondoltam, hanem legalább valami alapvetőre... Pl. ha megnyitom az oldalakat új lapon, akkor működjön már úgy is... úgy értem, rendesen, ne csak azt az oldaltöredéket kapjam meg, amit az AJAX-kommunikáció során igényelsz. Nem egy nagy valami arra külön módszert kreálni, pl. akkor nem a galeria.php-ra küldesz kérést AJAX-szal, hanem az ajax/galeria.php címre, most csak mondtam valami hasraütésszerűt. Vagy szerveroldalra beteszel AJAX-detektálást (pl. PHP-vel így néz ki). Gondolj bele, a Google robotja is azt a töredék tartalmat kapja csak meg, amikor bejárja az oldaladat. Plusz nem ártana, ha az egyes aloldalak könyvjelzőzhetők, elküldhetők lennének. De ez még alapvető igényesség körébe tartozik sztem, nem a megrendelő által extrán megfizetendőbe. No mindegy, nem az én dolgom, ezek csak tanácsok.
"Pont ilyet kerestem Köszönöm!"
Szívesen! Ja, annak idején, amikor szarakodtam Chrome-extension fejlesztésével, akkor én is ilyet kerestem, aztán meglett a megoldás. De mivel belinkelték ezt a kiegészítést, ezért a franc sem akart szenvedni vele, hogy feltaláljam a spanyolviaszt, és én is megírjam a saját változatomat. Ez működik, teszi a dolgát, ahogy kő'.[ Szerkesztve ]
Sk8erPeter
-
martonx
veterán
válasz trisztan94 #2234 üzenetére
"Mondtam is a megrendelőnek, hogy js-heavy oldalt csinálok, így aki nem használ js-t az vessen magára, 15.000-ért nem fogok mindent támogatni." - amennyire én látom, ez egy 4 lapból álló szimpla bemutatkozós portál.
Minek ide js-heavy, meg PHP? Ez 4 darab statikus html, plusz 1 js file, meg 1 css file.
De ha mondjuk ajax-ozunk, akkor legyen másik 4 statikus html, amiket be tudsz húzni a főoldalba. 15K-ért minek ezt túlbonyolítani?Én kérek elnézést!
-
Sk8erPeter
nagyúr
válasz martonx #2238 üzenetére
Ja, én is hasonlóra gondolok.
De azt mondjuk korábban nem fogtam fel, hogy ezek szerint a teljes összeg 15k, hát az úgy tényleg elég karcsú, de akkor meg egyáltalán nem értem, minek az egész AJAX-os tökölés, miért nem pakolt be annyi statikus oldalt, ahány van, aztán kész. Nem is kellett volna AJAX-olnia ennyi lóvéért. (Az meg tényleg picit vicces, hogy egy ilyen bemutatkozós oldal "JS-heavy", de én azt feltételeztem, hogy lesz ez még komolyabb is. ) Plusz a Google Maps-szel sem kellett volna szarakodni, hogy JS API-n keresztül legyen használva, egy sima iframe-es megoldásba bedobhatta volna, amit az oldalon lehet kapni beágyazós kódnak, aztán kész.
Így is a dizájnnal ahogy írja, eltökölt egy csomót. 15k-ért ez bőven vállalható lett volna a fentebb leírt módon is. Sőt.[ Szerkesztve ]
Sk8erPeter
-
cucka
addikt
válasz trisztan94 #2234 üzenetére
Nagyon sok minden el van csúszva firefoxban sajnos, a fő layout elemek nem ugyanakkorák, betűméret, pozicionálások.
Ez nincs így. Két dolog van:
- Minden böngészőnek van egy default stíluslapja, amelyek eltérhetnek egymástól. Lehet találni a neten mindenféle reset css-eket, ami lenullázza ezeket az alapértelmezett értékeket.
- A különféle böngészők eltérően renderelik a szövegeket, tehát itt egész egyszerűen nem lehet pixelpontos megjelenésre számítani. Ha a weboldalad kinézete bárhogy is függ attól, hogy hogyan rendereli a szövegeket a böngésző, akkor rosszul építetted fel a layout-ot.15.000-ért nem fogok mindent támogatni.
Szerintem örülhet, hogy ennyi pénzért valaki elvállalta a munkát. Egy tapasztalt fejlesztő, aki ebből él, 15 ezerért a szövegszerkesztőt sem fogja elindítani neki.Hát sajnos ezt nincs módomban tesztelni. Nem lehet valahogy azt is felrakni a 9 mellé? Esetleg még a hatot?
Hozzávetőleges eredményekért használd az Explorer kompatibilitási módját.
A legjobb megoldás pedig, ha virtuális gépen tartasz egy másik Windowst, régi Explorerrel. A Win nem tud egy időben több különböző verziójú Explorert futtatni.Egyébként sanszos, hogy valamit rosszul csinálsz, ha ilyen böngésző inkompatibilitásokkal küzdesz. A weboldalak 99%-ához nincs szükség semmilyen böngészőspecifikus dologra. Ha okosan írod meg a CSS-t, akkor még az IE6-IE7 specifikus dolgoknak sem kell külön böngészőfüggő stíluslap, Javascriptnél meg behúzod a jQuery-t (vagy mást), ami lényegében elsimítja az összes eltérést a böngészők között.
[ Szerkesztve ]
-
spammer
veterán
IE teszteléshez meg lehet próbálni ezt: IETester
Én régen használtam, jól jött, mikor még foglalkoztam azzal, hogy IE6 alatt is kinézzen valahogy Egyébként lehet több IE-t futtatni, nekem volt fent IE 6-7-8-9 is egy időben, volt ilyen komplett csomag, amit le lehetett tölteni.
15 rugó tényleg sovány, bár én nem ezzel foglalkozom, csak magamnak kódolok, de ennyiért maximum egy nagyon alap oldalt csinálnék ismerősnek. De hogy ajax meg jquery meg böngészőspecifikus css, hát a tököm... Statikus oldal, de max php switch elég egy ilyenhez (én utóbbira szavazok).
[ Szerkesztve ]
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
spammer
veterán
Hát tény, hogy elég béna az IETester, de a semminél talán jobb Nekem működött. MultipleIE pedig Win7 alatt ment (ha jól emlékszem, vagy talán Vista, de biztos, hogy nem XP, mert kb. 10 éve XP-t sem láttam).
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
fordfairlane
veterán
-
Sk8erPeter
nagyúr
-
martonx
veterán
"15.000-ért nem fogok mindent támogatni.
Szerintem örülhet, hogy ennyi pénzért valaki elvállalta a munkát. Egy tapasztalt fejlesztő, aki ebből él, 15 ezerért a szövegszerkesztőt sem fogja elindítani neki."Abszolút egyetértek. Én erről a piacról már rég kiszálltam, vagy ha valaki mégis engem talál meg, és megkérem az árát, akkor az áralkunál rendre elhangzik, hogy majd találok olyat, aki megcsinálja szarér-hugyér. Erre szoktam én mondani, hogy ahol ilyen a megrendelői hozzáállás, ott nem is rám van szükség, hanem egy idiótára, aki majd jól elszopatja magát szarér-hugyér.
Én kérek elnézést!
-
martonx
veterán
válasz fordfairlane #2244 üzenetére
Node, IE devtoolja, visszamenőlegesen IE5-ig tudja kompatibilitás módban futtatni magát, és még eddig sose futottam bele olyan helyzetbe, hogy ne lett volna 100%-osan megbízható a visszaskálázás.
Én jelenleg is IE10-el fejlesztek a melóban, IE8-ra visszaskálázva (nemrég még Ie6-ra volt visszaskálázva), hogy az átlag userek IE-jét szimuláljam. 100%-os a kompatibilitás, mindeféle extra telepítés, meg trükközés nélkül is.Én kérek elnézést!
-
Sk8erPeter
nagyúr
válasz martonx #2247 üzenetére
Ezt el is felejtettem (látszik, mennyire használom az IE-t), úgyhogy lehet, hogy nem kéne fent tartani az IE8-at csak amiatt, hogy legalább tudjam abban tesztelni. Most, hogy mondod, fel is rakom az IE10-et W7-re.
http://windows.microsoft.com/en-us/internet-explorer/ie-system-requirements#ie=ie-10
"If you want to run Internet Explorer 10 on your PC, here's what it takes:
..........
Hard disk space: 16 GB (32-bit) or 20 GB (64-bit)"Hogy mi van?
Mármint értem, hogy hülyebiztosra akarják csinálni a követelményeket (jóindulatúan feltételezem), de ez azért keményen néz ki
[ Szerkesztve ]
Sk8erPeter
-
martonx
veterán
válasz Sk8erPeter #2248 üzenetére
Ez hagyján, a VS telepítője előre, jól láthatóan kijelzi, hogy várhatóan 8Gb tárhelyre lesz szüksége (WTF), aztán a végén megnézve 1,5-et használ el (mondjuk az se kevés...)
MS-nél ezek a rendszer követelmények, meg az installerek figyelmeztetései, elég érdekesen alakulnak.Én kérek elnézést!
-
Sk8erPeter
nagyúr
válasz martonx #2249 üzenetére
Hát elég finoman fogalmaztál... Úgy is lehetne, hogy teljesen degenerált adatokat írnak ki. Igazából nem értem, miért ijesztik meg a júzert...
Na most amúgy felraktam az IE10-et, ahogy elnézem, felületében pontosan ugyanúgy nem tudtak semmi érdemit alakítani, mint az eddigi változatokban (ergo nem igazán hozzák meg a kedvét az áttérésre az addigi IE-hatereknek), viszont tény, hogy nagyon gyors, mind felületre (az ilyen apróságok IE8-nál, mint a fülváltás, ilyesmik is lassúak voltak), mind oldal-megjelenítésre, mind pedig JavaScriptes animációk terén. Utóbbi szerintem manapság nagyon sokat számít (hogy témába vágó is legyen), hogy eltalálják a JS-motort, mert elég sok minden JS-alapon történik; például az évek során a Firefox rettenetesen elcseszte - habár most próbálgattam, most már úgy tűnik, így a 21.x-es verziónál javítottak, pedig korábban pl. az animációk nagyon akadozóak voltak FF alatt.
Ennél jött elő például nagyon:
https://www.youtube.com/results?search_query=do+the+harlem+shake
Itt ugye össze-vissza elkezd ugrálni az oldal minden eleme, valamelyik korábbi változatnál a Firefox teljesen kiakadt ettől, és botrányosan lassú volt, direkt kipróbáltam. A mostani, 21.0 változatnál már jónak tűnik.Na, és visszatérve az IE10-re: valóban teljes körű a visszaválthatóság egészen IE7-ig (direkt kipróbáltam ezt egy korábban létrehozott tesztoldalon, pl. addEventListener miért is működött volna korábbi verziókban, nekik az attachEventet kellett erőltetni, tipikus - korábbi - Microsoftos önfejűség; IE8-módba visszaváltva ez a metódus ugyanúgy nem megy, ahogy a console.log-nál is pattog, ha nincs megnyitva F12-vel, tehát tényleg full IE8-motor), szóval ezek szerint tényleg teljesen felesleges emiatt több virtuális gépet használni, Linuxon is elég egy, amin IE10 van...
[ Szerkesztve ]
Sk8erPeter
Új hozzászólás Aktív témák
- ASUS H97-PRO alaplap 1150 Intel H97 lapkakészlet, 4xDDR3, SATA 3.0, HDMI, M.2 SSD foglalat
- Macbook Pro 16.2" M1 PRO 10C/16C 16GB - 1TB Magyar billentyűzet - Garanciális 2025.08.04.-ig
- Sharkoon TG5 számítógép ház Corsair HX650 tápegységgel eladó
- Asus V8460 Ultra ( Geforce 4 Ti 4600 )
- HP Prodesk 600 G5 DM, Tiny i5-9500T , 8-16GB DDR4 , 256GB NvME , 2 év gari , AAM számla
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Alpha Laptopszerviz Kft.
Város: Pécs