0

以下隐藏的 Flash 影片出现在我正在编码的页面上;在我弄清楚如何从我的系统中删除它之前,是否可以使用 javascript 找到它并删除它?它的容器的 id 可能会改变。

<div id="SiUnhdqlqHN9t7wB_tbstore_container" 
        style="left:-2000px; top:-2000px; position:absolute;">
    <param name="movie" value="http://tbupdate.zugo.com/ztb/2.5/jsi/man/fc.swf"/>
    <param name="allowScriptAccess" value="always"/>
4

2 回答 2

3

不要花时间在变通方法上。停止一切并找出发生这种情况的原因,当你找到它时,将其压扁。

话虽如此,如果我假设param元素在其中div并且div不包含任何其他内容,那么:

var list = document.getElementsByTagName('div');
var index;
var div;
for (index = 0; index < list.length; ++index) {
    div = list[index];
    if (div.id.indexOf("store_container") !== -1) {
        div.parentNode.removeChild(div);
        break;
    }
}

或者,如果您使用的是带有 的浏览器querySelector,这会容易得多,因为您可以使用以selector结尾的属性

var div = document.querySelector("div[id$=store_container");
if (div) {
    div.parentNode.removeChild(div);
}

但同样:重要的是花时间解决实际问题,而不是解决方法。

于 2012-12-20T15:37:48.153 回答
0

如果您对 JQuery 持开放态度:

$('div').each(function(){
  if ($(this).attr("id").indexOf("_tbstore_container") != -1) {
    $(this).remove();
  }
});
于 2012-12-20T15:36:02.377 回答