如何让jQuery停止对AJAX响应的脚本评估?

Tho*_*man 5 javascript ajax jquery

大多数人都希望脚本评估能够正常运行.我不.

我正在尝试将视频作为背景(HTML 5,而不是Flash),因为我无法控制所请求页面上包含的内容(Tumblr - 您可以只为索引页面和永久链接页面提供唯一代码,您可以'有一个主页,旧的帖子页面,然后永久链接页面,等等.

{block:IndexPage}
var productElement = document.getElementById("dreamscene");
if (productElement == null)
{
$("body").append('<img src="http://static.tumblr.com/opbsaiu/mqllkvs1c/overlayyyy.png"
                  style="position: fixed; z-index: -1; top: 0pt; left: 0pt; 
                         width: 100%; height: 100%;"><video id="dreamscene" 
                  style="position: fixed; opacity:0.343; z-index: -2; top: 0pt; 
                         left: 0pt; width: 100%; height: 100%;" 
                  loop autoplay audio="muted">
                  <source type="video/mp4" src="videosource#%#$%^&*/dsgfhjk.mp4"> 
                  </source></video>');
}
{/block:IndexPage}
Run Code Online (Sandbox Code Playgroud)

在放置另一个元素之前,我一直试图让它检查元素.我已经得出结论,代码在一个单独的实例中运行,就像页面中的页面一样.显然这是非常糟糕的,我实际上已经让IE 9为音频添加了回声效果.

在Firebug和IE开发中.工具,视频元素的实例永远不会超过一个,所以上面的代码附加了document.ready事件,我正在使用http://www.infinite-scroll.com/来实现魔术.

有一个dataType参数:

$('#thumbnails').infinitescroll({
    navSelector  : ".next a:last",
    nextSelector : ".next a:last",
    itemSelector : "#thumbnails .thumb",
    bufferPx : 7777,
    dataType : 'html',
    loadingText: "<span class=\"spectrum\">hold it, cowboy!</span>" },
    function(newElements){ itemHovers(); }
);
Run Code Online (Sandbox Code Playgroud)

...但它似乎没有任何影响,无论是设置为文本还是html(我已阅读文档; - ]).

ari*_*iel 1

你尝试过而不是

var productElement = document.getElementById("dreamscene");
if (productElement == null)
{
Run Code Online (Sandbox Code Playgroud)

这:

if (!$("#dreamscene"))
{
Run Code Online (Sandbox Code Playgroud)

另外,尝试添加一个 Id 并<img>查找该 id,而不是<video>id。由于<video>仅是 html5,因此可能会出现问题。