首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以使用javascript:伪协议设置图像源吗?

可以使用javascript:伪协议设置图像源吗?
EN

Stack Overflow用户
提问于 2011-01-26 06:19:44
回答 2查看 127关注 0票数 1

基本上,我有一个上下文,其中我只被允许创建一个映像,但我想在决定源文件之前运行一个脚本,所以我想知道这是否可能:

代码语言:javascript
复制
<img src="javascript:{load a remote script and run it to figure out the source}" />

我想出的变通办法是:

代码语言:javascript
复制
<img src="any-old-image.gif" onload="document.write('<scr' + 'ipt src=\"http://mysite-script.js\"'></scr' + 'pt>');" />

但我希望能有更干净一点的东西。

附言:我知道"javascript:“是个非常邪恶的词。这是一个特殊的情况。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-26 08:20:17

创建一个函数,收集您需要的任何数据并将其发送到服务器(通过XMLHttpRequest或您喜欢的任何方法)。创建一个检查来自服务器的响应并决定使用哪个图像的函数。然后,您可以直接设置图像的url:

代码语言:javascript
复制
document.getElementById("myImage").src = myImageSrc;  

编辑:地址注释。

如果你只能处理img元素本身,那么你是对的,img.onload就是你想要的。如果不仅仅是几行脚本,那么导入脚本似乎是合理的。也许这比document.write更干净一点

代码语言:javascript
复制
document.body.appendChild(document.createElement("script")).src =
    "http://mysite.com/myscript.js";
票数 1
EN

Stack Overflow用户

发布于 2011-01-26 06:27:07

如果你想要的东西可以在服务器上完成。您可以让src属性指向您的服务器端脚本,并在执行完您想要的任何内容后写回图像。

但我不确定这是否适合你的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4799504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档