Diskuze: existence obrázku
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 13 zpráv z 13.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Kde potrebujes kontrolovat existenciu obrazku? Na klientovi? Na serveri?
jQuery/AJAX:
$.ajax({
url: '/soubor.ext',
success: function(data){
//soubor existuje
},
error: function(data){
//soubor neexistuje
},
})
nejjednodušší máš
<img src="foo.png" alt="bar" onload="..." onerror="..." />
lze to samozřejmě nastavit i z JavaScriptu.
<img src="foo.png" id="foo" alt="bar" />
var img = document.getElementById("foo"); // s jQuery: img = $("#foo")[0]
img.onload = function () {
// image load
}
img.onerror = function () {
// error
}
Ahoj, nechce se mi zakládat další diskuze o JS a jQuery, potřeboval bych pomoc, v consoli v google chrome mi to píše: $ is not defined. Přikládám kód prosím o radu Díky
<style>
#hlavni{width: 850px; margin: 0 auto;}
#top{border: 1px solid #c3c3c3; margin: 5px; padding: 50px;}
#obsah{border: 1px solid #c3c3c3; margin: 5px; height: 1500px;}
#blok{width: 150px; height: 150px; float: right; border: 1px solid #000000; position: absolute; margin: left; top: 50px;
z-index: 1;}
</style>
</head>
<body>
<div id="hlavni">
<div id="top"></div>
<div id="blok"></div>
<div id="obsah">
<h1>Obsah stránky</h1>
</div>
</div>
<script type="text/javascript">
$(document).ready(function($){
var body = parseInt($("#obsah").offset().top) - 20;
$(window).scroll(function(){
var scroll = $(window).scrollTop();
$("#blok").html("posunuti: " + scroll);
if(scroll > body){
$("#blok").stop().css({
position: 'fixed',
left: 407,
top: 20
});
}else if(scroll < body){
$("#blok").css({
left: 407,
top: 50,
});
};
});
});
</script>
</body>
</html>
Vím že je to asi už jedno ... Ale pro tvoje vzdělávací účely ... Ajax nedokáže zpracovat jiná data než XML json js text HTML ... To znamená že na obrázek se i sáhne ale vyleze to něco jako parse error ... Takže ajax a obrázky prosím nee.
Wow nečekal jsem že někdo zareaguje na tohle ne úplně přesné vyjádření ... Každopádně palec nahoru za pohotovost a znalosti.
Jsem na mobilu takže se omlouvám za porušení edit pravidla :
Edit: ajax dokáže zpracovat i binární data ... Jak odeslat tak přijmout ... Tedy pokud si stáhnu binárně obrázek tak ho mohu (po stáhnutí a uložení do pole, pomocí bufferu ) do stránky hodit ...
Nicméně to není nejlepší způsob jak zjistit jestli obrázek existuje
Více o ajaxu například v připravovaném seriálu tady na sítí.
Zobrazeno 13 zpráv z 13.