我正在尝试从页面中删除div(最好是防止它加载) 但是现在我已经决定在页面加载后删除它。
当我尝试以下代码行in jsFiddle时,#content
div会被移除,如预期的那样。
<script type='text/javascript'>//<![CDATA[
$(window).load(function(){
$('#content').remove();
});//]]>
</script>
但是,我也尝试在an actual website上实现它,但在这种情况下,#content
div不会被删除。
关于可能出错的任何建议?
答案 0 :(得分:2)
如果你正在与另一个使用美元进行操作的库共享jQuery,你需要使用匿名包装来防范它:
(function($) {
$(window).on('load', function(){
$('#content').remove();
});
}(jQuery));
请注意,而不是.load()我使用.on('load',fn)。
您可以将您的代码绑定到DOM上,而不是在页面加载上; jQuery将自身作为内部函数的第一个参数传递:
jQuery(function($) {
$('#content').remove();
});
答案 1 :(得分:1)
由于某种原因,你的$变量并没有指向jQuery。
<script type='text/javascript'>
window.$ = jQuery;
$(window).load(function()
{
$('#content').remove();
});
</script>
答案 2 :(得分:0)
使用它:
<script type="text/javascript">
var node = document.getElementById('content');
if(node.parentNode)
{
node.parentNode.removeChild(node);
}
</script>
希望得到这个帮助。
答案 3 :(得分:0)
试试这个
<script type='text/javascript'>
$(document).ready(function(){
$('#content').remove();
});
</script>
或
$(function()
{
$('#content').remove();
});
答案 4 :(得分:0)
这是因为您拨打$(window).load()
时出现javascript错误。
Uncaught TypeError: Object [object global] has no method 'load'
此外,您应该更好地使用document.ready,因为内容将被更快地删除(不需要等待加载所有图片)。
//shorthand for $(document).ready()
$(function(){
$('#content').remove();
});
答案 5 :(得分:0)
TypeError:$(...)。load不是函数
在新版本的Jquery
中不推荐使用load时,它会给出错误而不是低于1$(window).load(function(){
});
使用此代码
$(function(){
// your code here
})
答案 6 :(得分:0)
您正在使用onload进行jQuery测试,
因此您必须在jquery中添加onload语法,在您的站点上该语句未被调用onload,这就是为什么它无法正常工作
我已经更新了小提琴
http://jsfiddle.net/MarmeeK/FRYsJ/3/
<script>
标记下的JS代码,无需在页面中添加onload,
<script type="text/javascript">
$(document).ready(function(){$('#content').remove();});
</script>
这应该有效:)
答案 7 :(得分:0)
jquery冲突的情况。你在页面上也有mootools框架。
我也对页面进行了“查看源代码”,我发现了这一行
$j = jQuery.noConflict(); //line 132
所以试试这个
$j('#content').remove();
Or
jQuery('#content').remove();