Javascript追加似乎无法正常工作

时间:2014-12-17 03:29:46

标签: jquery append

我正在尝试随机定位500个图像“Smallstar.png”(是的,我知道它还没有很好地制作,我只是想在进入太深之前获得功能),但附加功能在javascript似乎没有附加到id为prlx1的div。 我已经尝试过使用appendTo和prepend所以我认为这是一个语法问题,但我一直无法弄清楚

$(document).ready(function(){
	for(i = 0;i<500;i++){
		var number =1+ Math.floor(Math.random()*100);
		var number1 =1+ Math.floor(Math.random()*100);
		var t= "<img id = 'imgs' src ='H:\Stars\Smallstar.png>";
		$("#prlx1").append(t); //This is where the problem is
		$("#imgs").css({marginLeft: number, marginTop: number1});
	}
});

2 个答案:

答案 0 :(得分:0)

缺少关闭'和\需要转义

var t= "<img id = 'imgs' src ='H:\Stars\Smallstar.png>";
                                 ^^    ^^           ^^^

带有更正

var t= "<img id = 'imgs' src ='H:\\Stars\\Smallstar.png'>";
                                 ^^     ^^            ^^^                  

为什么你不只是预先使用jQuery设置样式

也没有意义
var img = $("<img/>")
              .attr("src","H:\\Stars\\Smallstar.png")
              .css({marginLeft: number, marginTop: number1});
$("#prlx1").append(img); 

你可能会在从硬盘驱动器上读取文件时遇到问题。设置本地服务器并省去麻烦。

答案 1 :(得分:0)

元素的ID必须是唯一的......

&#13;
&#13;
$(document).ready(function() {
  for (i = 0; i < 50; i++) {
    var number = 1 + Math.floor(Math.random() * 100);
    var number1 = 1 + Math.floor(Math.random() * 100);
    $('<img />', {
      src: '//placehold.it/32&text=' + i,
      css: {
        marginLeft: number,
        marginTop: number1
      }
    }).appendTo('#prlx1'); //This is where the problem is
  }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="prlx1"></div>
&#13;
&#13;
&#13;