Maison > Questions et réponses > le corps du texte
Voici à quoi cela ressemble lorsque vous entrez pour la première fois dans la page : une fois la page Web chargée, l'image cible sera automatiquement appelée si elle n'est pas trouvée, l'image de sauvegarde sera utilisée (méthode onload event noImg() en JS). Le problème est maintenant que si vous entrez la clé dans la zone de recherche, cliquez sur Rechercher après le mot et une fois les résultats de la recherche affichés sur la page Web, la méthode onload n'est plus appelée onload : "noImg()". à cela, mais cela n'a pas fonctionné. Comment le casser ? Demandez à Dieu l'illumination ~
Lorsque la page venait d'être chargée, elle ressemblait à ceci :
Cliquez ensuite sur Rechercher et cela ressemblera à ceci :
Il y a un champ de recherche ci-dessus. Après avoir entré un mot-clé dans le champ de recherche, une requête asynchrone Ajax est appelée et les données renvoyées sont repeuplées dans la page :
for(i in data){
/* $('<p />').attr("src","img/2017329/2.png").css().appendTo(jqTag); */
var pTag = $('<p/>');
var h4Tag = $('<h4/>').html("模型名称:"+data[i].modelName);
var imgTag = $('<img/>').attr({
alt:"...",
src:data[i].picFileUrl,
onload:"noImg()"
});
C'est la méthode js qui était disponible depuis le début :
/ Utiliser des images de sauvegarde lorsque les images de la page Web ne sont pas réalistes /
function noImg(){
var img = event.srcElement;
img.src = "images/img.jpg";
img.onerror = null;
}
高洛峰2017-05-17 10:08:31
http://stackoverflow.com/ques...
Note, onload
事件应当在图片src
avant affectation.
Code de référence :
var imgLoad = function (url) {
var img = new Image();
if (img.complete) {
callback();
} else {
img.onload = function () {
callback();
img.onload = null;
};
};
img.src = url;
};