Pouze tento týden sleva až 80 % na e-learning týkající se Javy
Avatar
Patrik Neumann:25.8.2015 20:36

Ahoj, lze nějak udělat pomocí javascriptu, abych zjistil, zda obrázek existuje či ne, a pokud ne, tak to něco provede (je jedno co)? PHP použít nemůžu. Budu rád za nějaké rady.

Odpovědět
25.8.2015 20:36
Nic není nemožné, proto se snažím dál.
Avatar
dobrakmato
Člen
Avatar
Odpovídá na Patrik Neumann
dobrakmato:25.8.2015 21:26

Kde potrebujes kontrolovat existenciu obrazku? Na klientovi? Na serveri?

Nahoru Odpovědět
25.8.2015 21:26
Čekni stránku so zabavnými obrázkami z internetov: https://www.coolovo.eu?ref=1007
Avatar
radimsu
Člen
Avatar
Odpovídá na Patrik Neumann
radimsu:25.8.2015 21:29

jQuery/AJAX:

$.ajax({
  url: '/soubor.ext',
  success: function(data){
    //soubor existuje
  },
  error: function(data){
    //soubor neexistuje
  },
})
Nahoru Odpovědět
25.8.2015 21:29
404: Motto not found
Avatar
Odpovídá na Patrik Neumann
Michal Žůrek - misaz:25.8.2015 22:20

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
}
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět
25.8.2015 22:20
Avatar
Odpovídá na Michal Žůrek - misaz
Patrik Neumann:25.8.2015 23:20

díky, dávám like

Nahoru Odpovědět
25.8.2015 23:20
Nic není nemožné, proto se snažím dál.
Avatar
Jurajs
Člen
Avatar
Jurajs:26.8.2015 9:41

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>
 
Nahoru Odpovědět
26.8.2015 9:41
Avatar
Jurajs
Člen
Avatar
Jurajs:26.8.2015 9:45
$(document).ready(function($){  // tady mi to píše $ is not defined
 
Nahoru Odpovědět
26.8.2015 9:45
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Jurajs
Člen
Avatar
Jurajs:26.8.2015 10:15

Omlouvám se za spam, ale už jsem to vyřešil :D :D :D ...radši ani nebudu psát kde byla chyba :D :D

 
Nahoru Odpovědět
26.8.2015 10:15
Avatar
TomasGlawaty
Člen
Avatar
Odpovídá na Jurajs
TomasGlawaty:26.8.2015 10:41

Hádám, chyběla jQuery ? :D

 
Nahoru Odpovědět
26.8.2015 10:41
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na radimsu
Taskkill:26.8.2015 12:32

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.

 
Nahoru Odpovědět
26.8.2015 12:32
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Drahomír Hanák
Taskkill:26.8.2015 14:02

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.

 
Nahoru Odpovědět
26.8.2015 14:02
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Taskkill
Taskkill:26.8.2015 14:20

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 :-D

Více o ajaxu například v připravovaném seriálu tady na sítí.

 
Nahoru Odpovědět
26.8.2015 14:20
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 13 zpráv z 13.