我需要优先使用jQuery向另一个域发送GET请求。这不是相同的原始策略绕过,因为我不需要得到响应。例如,使用JavaScript,我知道我可以这样做:
document.write('<img src="http://somedomain.com/someapp.php?data='+data+'>')
使用jQuery有更好的方法吗?
答案 0 :(得分:4)
您可以创建<img>
元素,但不对其执行任何操作...它会导致立即获取,从而导致GET请求:
$('<img src="http://somedomain.com/someapp.php?data='+data+'">');
答案 1 :(得分:2)
我认为你在DOM中不需要它,所以你可以这样做:
var img = new Image();
img.src = 'http://somedomain.com/someapp.php...' + ...;
答案 2 :(得分:0)
您可以使用JS将脚本标记附加到DOM。
var scrElem=document.createElement("script");
scrElem.type="text/javascript"; //maybe not required
scrElem.src="http://bla";
document.getElementsByTagName("head")[0].appendChild(scrElem);
如果你想对它真的很整洁,你也可以给脚本元素一个id
属性,这样你就可以在它完成它的工作时删除它。
或者,jQuery getScript
很好地完成了所有这些。
答案 3 :(得分:0)
具体来说,将其添加到&lt; head&gt;元件。我不确定它是否适用于IE。
答案 4 :(得分:0)
你可以这样做:
$('selector').append('<img width="0" height="0" src="http://somedomain.com/someapp.php?data=' + encodeURIComponent(data) + '>');
答案 5 :(得分:0)
无需将<img>
注入DOM。
简单地:
var request=$('<img/>').attr('src','http://somedomain.com/someapp.php?data='+data);
这将创建一个新的img-Element,类似于新的Image()。 如果提供了src属性,则将加载图像(发出请求)
但我认为这不是更好的方式,我是另一种方式。 它是jQuery方式做马丁的提案。
但是,如果请求的资源没有产生大的响应会很好,因为无论如何都会加载响应。