从外部文本文件加载图像信息并在html文件中显示

时间:2011-06-22 23:52:58

标签: javascript html

我希望从外部文本文件中获取图像的Javascript函数加载信息,并在我的WordPress网站上显示图像。我在网上找到了一些代码来加载和解析外部文本文件。

虽然我没有成功地让它发挥作用。

我设置了一个单独的html测试页面,但这也不起作用。

我正在尝试让网站加载js文件,并使用mmusic div中的代码输出图像:

document.write('<a href="' + AdLinkPath[0] + '" target="_blank"><img src="' + AdFilePath[0] + '" width="' + AdWidth[0] + '" height="' + AdHeight[0] + '"/></a>');

我在test.html文件中尝试了相同的代码,但我无法让它工作。

有人可以告诉我我做错了吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

我不确定您的具体问题是什么,但您可以采取一些措施来改善整体设计。

首先,你确定这是你想在Javascript中做的事吗?您似乎正在修改服务器上的文本文件,以告知您的网页要投放哪些广告。没关系,但是如果你有选择的话,那么做这个服务器端会更好。如果您有权使用PHP或类似语言将HTML发送回用户浏览器,只需在图像中包含相应的URL即可。这样可以消除代码的复杂性,提高页面加载速度,并在没有适当的Javascript支持的情况下正确显示广告。

如果您要使用AJAX执行此操作,那么我强烈建议您使用JSON格式的数据和某种类型的库来处理请求。解析文本文件会带来许多问题,而将数据格式化为JSON会为您提供一种将其转换为Javascript对象的便宜方式。 jQuery是这样做的一个流行选择:http://api.jquery.com/jQuery.getJSON/

您可以将文件格式化为:

{
    "img": "http://myhost/img/mm.jpg"
    "link": "http://myhost/"
    "width": "192"
    "height": "108"
}

然后您需要执行以下操作来更新页面上的图像字段:

$.getJSON("test.js", function(json) {
    $.each(json, function(key, value) {
        //parse the keys and values appropriately in here
    });
});

您可能也不想使用document.write。这会覆盖页面的整个内容。您可能希望以某种方式选择图像元素,然后更改其属性。您可以使用jQuery选择器。有关在选择img元素后修改img元素的方法的操作,请参阅有关操作的部分。

http://api.jquery.com/category/selectors/

http://api.jquery.com/category/manipulation/

答案 1 :(得分:1)

在收到AJAX响应之前发生了document.write语句。如果您在四个return语句之后直接移动该语句,它应该可以解决您的问题。