event.stopPropagation无效

Arv*_*vin 5 html javascript jquery

我正在使用视频预览系统.我的源代码片段是

<li id="liVideoList">
    <div class="thumbitem">
        <div>
            <a>
                <img alt="" src="images/download.png" onclick="download('ID')" title="Download" />                                     
            </a>
        </div>
        <img class="imagThumb" alt="Thumbs" class="thumb" src="#Path#" />
    </div>                                           
</li>
Run Code Online (Sandbox Code Playgroud)

有一个功能可以在单击li时预览视频.它是动态的,没有问题.但是如果我cli在li里面的下载按钮,li和下载按钮的功能都正常工作,这意味着预览正在不合需要地改变.为了避免这种情况,我在下载代码后添加了以下函数

event.stopPropagation();
Run Code Online (Sandbox Code Playgroud)

代码看起来像

function Download(Id) {    
    $.ajax({
        type: "POST",
        url: "MyWebMethods.asmx/Download",
        data: { "Id": Id}
    }).complete(function (data) {

    });
    event.stopPropagation();
}
Run Code Online (Sandbox Code Playgroud)

但这两个功能仍然有效

pal*_*aѕн 13

你可以这样做:

function DownloadAsset(AssetId, e) {

    if (!e) var e = window.event
    e.cancelBubble = true;
    if (e.stopPropagation) e.stopPropagation();

    // your ajax call
    $.ajax({....})
}
Run Code Online (Sandbox Code Playgroud)

Where e指的是所有浏览器中的事件,您可以访问该事件.