在我的网站上,我尝试使用(“#report-type”)追加我的图像。append($ img)其中img是一个包含src网站的jquery对象,基于改变img的src的下拉菜单选择。我知道它确实附加在正确的位置,img标签格式正确,并且如果我只是将img标签硬编码到HTML中,图像就会显示出来。jquery img标签在添加后被删除使用append
然而,页面运行会发生什么,并且我在firebug中看到img被追加了一秒钟,然后消失。有谁知道为什么会发生这种情况?
这里是我的下拉更改处理功能:
$(".update-report").click(function() {
var src, image, $img2, val;
//Clear old charts
//$("#report-type option").children().remove();
//alert(typeof $("select option:selected").val());
val = $("select option:selected").val();
switch (val[0]) {
case "0":
src = "https://graphite.admarketplace.net:2222/render/?from=-7days&width=1400&height=420&_salt=1309990757.707&target=alias(movingAverage(divideSeries(sumSeries(*.server.xml.*.revenue)%2CsumSeries(*.server.xml.*.clicks)),200),%22CPC%22)&fgcolor=black&bgcolor=white&title=Average%20CPC%20per%20minute%20-%207%20Days&hideLegend=true";
$("#chart1").attr('src',src);
break;
case "1":
alert("here1");
src = "http://graphite.admarketplace.net:2222/render/?from=-30days&width=1400&height=420&_salt=1309990757.707&target=alias(movingAverage(divideSeries(sumSeries(*.server.xml.*.revenue)%2CsumSeries(*.server.xml.*.clicks)),200),%22CPC%22)&fgcolor=black&bgcolor=white&title=Average%20CPC%20per%20minute%20-%2030%20Days&hideLegend=true";
$img = createImg(src);
alert(typeof $img);
$("#report-type").append($img);
break;
case "2":
alert("here2");
src = "http://graphite.admarketplace.net:2222/render/?from=-1hour&width=1000&height=400&_salt=1309980469.069&target=alias(e.network.lb.xml.AverageRespTime,%22East%22)&target=alias(w.network.lb.xml.AverageRespTime,%22West%22)&yMax=500&fgcolor=black&bgcolor=white&title=Average%20Response%20Time%20in%20milliseconds%20Current%20Hour";
$img = createImg(src);
src = "http://graphite.admarketplace.net:2222/render/?from=-25hour&until=-24hour&width=1000&height=400&_salt=1309980469.069&target=alias(e.network.lb.xml.AverageRespTime,%22East%22)&target=alias(w.network.lb.xml.AverageRespTime,%22West%22)&yMax=500&fgcolor=black&bgcolor=white&title=Average%20Response%20Time%20in%20milliseconds%20Current%20Hour%20Yesterday";
$img2 = createImg(src);
$(".grid 16").append($img);
$(".grid 16").append($img2);
break;
case "3":
alert("here3");
src = "http://graphite.admarketplace.net:2222/render/?from=-1day&width=1000&height=400&_salt=1309980469.069&target=alias(movingAverage(e.network.lb.xml.AverageRespTime,20),%22East%22)&target=alias(movingAverage(w.network.lb.xml.AverageRespTime,20),%22West%22)&yMax=500&fgcolor=black&bgcolor=white&title=Average%20Response%20Time%20in%20milliseconds%20Current%2024%20Hours";
$img = createImg(src);
src = "http://graphite.admarketplace.net:2222/render/?from=-2day&until=-1day&width=1000&height=400&_salt=1309980469.069&target=alias(movingAverage(e.network.lb.xml.AverageRespTime,20),%22East%22)&target=alias(movingAverage(w.network.lb.xml.AverageRespTime,20),%22West%22)&yMax=500&fgcolor=black&bgcolor=white&title=Average%20Response%20Time%20in%20milliseconds%20Yesterday";
$img2 = createImg(src);
$(".grid 16").append($img);
$(".grid 16").append($img2);
break;
default:
alert("in the default");
}
});
只是要注意的情况下0这里,是因为我一直打打闹闹试图得到这个工作。即使我将img标签硬编码到HTML中,并且只尝试更改src,这也不起作用。但是,当我尝试追加整个图像时,这也不起作用。
我想我们可能需要看到更多的代码。我们可以看到$ img被初始化了吗?你可以编辑你的问题,并包括这是发生在整个事件处理程序? 是否可以在其他浏览器中重现? – Patricia
我认为你的图片标签格式不正确。这就是浏览器不呈现它的原因。 – switz
如果我在萤火虫,我实际上可以设置一个断点添加img,它会留在那里。所以它与格式化没有任何关系。也许有另一个脚本正在自动更改这个?如果是这种情况,我怎么能嗅出它可能甚至可能是后端 – Evan