这个jQuery隐藏功能只是不想工作

时间:2011-03-14 04:39:27

标签: javascript jquery html hide

这是我的浏览器看到的HTML。我想要隐藏div.embed元素:

<div id="video_div">
<img src="http://i2.ytimg.com/vi/ERF9lCf86I8/hqdefault.jpg" style="width: 200px; ">
<div class="embed">
<object width="300" height="194"><param name="wmode" value="opaque"><param name="movie" value="http://www.youtube.com/v/ERF9lCf86I8?version=3">
<param name="allowFullScreen" value="true">
<param name="allowscriptaccess" value="always"><embed src="http://www.youtube.com/v/ERF9lCf86I8?version=3" type="application/x-shockwave-flash" width="300" height="194" allowscriptaccess="always" allowfullscreen="true" wmode="opaque">
</object>
</div>
</div>

这是我的application.js代码,用于动态替换带有相应嵌入视频的链接,显示缩略图,但未成功隐藏视频:

$(document).ready(function() {

$('a.oembed').embedly({maxWidth:300,'method':'replace'}).bind('embedly-oembed', function(e, oembed){ 
    $("#video_div").prepend($("<img>", { src: oembed.thumbnail_url, width:200 }));
});
$('div.embed').hide();
});

这种隐藏方法不起作用真的很奇怪。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我希望<{>> 上面的代码 hide调用失败,并且调用根本没有执行。如果我添加了假的embedly插件,则可以使用:http://jsbin.com/ucuru4/2

我建议在调试器中单步执行代码。 Chrome,Safari,Opera和IE8都有内置调试器。有Firefox的Firebug,以及VS.Net的免费版本,用于在以前版本的IE上进行调试。

如果代码没问题,但您发现embedly调用间歇性失败,最好将其包装在try/catch块中。