这就是我在<div id = 'book'>....</div>
中添加图片的方法。不合时宜它不会像我预期的那样创建任何img标签。错误是什么?确认路径包含值。
$('#book').append('<img src ="' + paths[1] + '" style = "width:100%;height:100%;top:1px;left:1px" alt = "flip book" id = "logo-cover" />');
更新
这可能是由于路径[1]值,它使用for循环来迭代一个数组 它可能是一个空值,但它应该被跳过,因为我在追加之前已经检查过......
整个脚本
<script>
function load_pages(page) {
$.ajax({
type: "GET",
url: "scandir.php",
data: "page=" + page,
dataType: 'json',
success: function (data) {
console.log(data);
$.each(data, function(i,paths){
var status = 'nonFinal';
if (paths[0] == '' && i == 'next'){
status = 'suspectFinal';
}
if (paths[1] == '' && i == 'next' && status == 'suspectFinal'){
status = 'final';
page--;
load_pages(page);
status == 'nonfinal'
}
else{
if (paths[0] != ''){
console.log('method called');
$('#book').append($('<img>').attr('src',paths[0]).css({'width':'100%','height':'100%','top':1px;}).attr('id','logo-cover'));
}
if (paths[1] != ''){
console.log('method2 called');
$('#book').append($('<img>').attr('src',paths[1]).css({'width':'100%','height':'100%','top':1px;}).attr('id','logo-cover'));
}
}
});
}
});
}
$(document).ready(function(){
var inputPage = '1';
if (inputPage == '1'){
inputPage = '2';
}
load_pages(inputPage);
});
</script>
答案 0 :(得分:2)
您发布的代码是正确的,我用它来创建这个有效的jsFiddle:http://jsfiddle.net/Ah87q/
您应该检查paths[1]
是否为空,或者您可以在其他地方找到错误。
答案 1 :(得分:0)
检查代码是否被调用的一种方法是向&quot; append()&#39;添加某种回调函数。方法。虽然它没有,但我们会用这种方式模拟它:
$('#book').append('<img src ="' + paths[1] + '" style = "width:100%;height:100%;top:1px;left:1px" alt = "flip book" id = "logo-cover" />').each(function(){
console.log('method called');
// or with an alert
alert('method called');
});
如果根本没有调用它,问题可能在于使用id而不是类(&#39;#&#39;而不是&#39;。&#39;)或类似的东西。此外,可以在元素&#34;#book&#34;之前调用此方法。已加载,因此您可能希望将代码放在
中(文档)$。就绪(函数(){
});