JQuery падзея звязваюць, калі CSS фонавы малюнак цалкам загружаны

Я хацеў бы, каб выклікаць падзея пасля ЦАЛКАМ загружаецца фонавы малюнак. Малюнак складаецца з дынамічнага PHP скрыпт.

$("#box").css("background-image","url(image.php)");

можа быць, я магу паспрабаваць атрымаць малюнак у нябачным і калі нагрузка малюнка (.load ()) ўсталяваць фонавы малюнак з ГКЗ нябачнай ? не ўпэўнены...

Дзякуй за дапамогу.

7

2 адказы

Вы можаце выкарыстоўваць мой jQuery плягін называецца waitForImages , які дапамог бы з гэтым ...

$("#box").css("background-image", "url(image.php)").waitForImages({
   waitForAll: true,
   finished: function() {
      //Background image has loaded.
   }
});

У адваротным выпадку, каб зрабіць гэта ўручную ...

var image = 'image.php',

    img = $('');

img.bind('load', function() {
    //Background image has loaded.
});

img.attr('src', image);

$('#box').css('background-image', 'url(' + image + ')');
10
дададзена
@pelelive Вы карыстаецеся
дададзена аўтар alex, крыніца
Вы ведаеце, чаму я атрымліваю гэтую памылку: Памылка: $ .isPlainObject не з'яўляецца функцыяй? (Звярніце ўвагу, што image.php стварыць новы вобраз кожны раз, калі мы называем яго)
дададзена аўтар pelelive, крыніца
дзякуй Алексу яго працы ў цяперашні час. ура!
дададзена аўтар pelelive, крыніца
$("#box img").load(function() {  
    //the image elements in #box are fully loaded.
});
1
дададзена
Гэта фонавы малюнак , а не IMG элемент.
дададзена аўтар alex, крыніца