jQuery slideDown ($.slideDown)动画错误:Uncaught TypeError: Canno
jQuery slideDown ($.slideDown) animated error: Uncaught TypeError: Cannot read property 'style' of undefined
这个简单的代码不起作用:
$('li a').off('click').on('click', function(e){
var checkElement = $this.next();
checkElement.slideDown(500, function () {
checkElement.addClass('menu-open');
});
});
HTML: <ul class="sidebar-menu">
<li>
<a href="unsafe:javascript:void(0)">
<i class="fa "></i><span class="ng-binding">Level 1</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
<ul class="treeview-menu">
<li>
<a href="#/level2" class="ng-scope">
<i class="fa "></i> <span class="ng-binding">Level 2.1</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
</li>
<li>
<a href="#/level2" class="ng-scope">
<i class="fa "></i> <span class="ng-binding">Level 2.2</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
</li>
</ul>
</li>
</ul>
debug: checkElement
in var checkElement = $this.next();
它包含一个位置数组,与'ul'元素同级:打印Chrome调试器
jquery-2.2.3.min.js: Uncaught TypeError: Cannot read property 'style' of undefined
在执行回调/完成函数之前抛出异常。在jQuery中,错误在方法:animate
中我还加载了Angular。
原谅我英语不好
$this.next();
应为$(this).next();
并希望$('.sidebar-menu > li > a')
指向直接的<a>
子节点
$('li > a').off('click').on('click', function(e){
var checkElement = jQuery(this).next('.treeview-menu');
checkElement.slideDown(500, function () {
checkElement.addClass('menu-open');
});
});
.treeview-menu {
display: none;
}
.menu-open {
color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="sidebar-menu">
<li>
<a href="unsafe:javascript:void(0)">
<i class="fa "></i><span class="ng-binding">Level 1</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
<ul class="treeview-menu">
<li>
<a href="#/level2" class="ng-scope">
<i class="fa "></i> <span class="ng-binding">Level 2.1</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
</li>
<li>
<a href="#/level2" class="ng-scope">
<i class="fa "></i> <span class="ng-binding">Level 2.2</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
</li>
</ul>
</li>
</ul>
终于解决了。它与Angular没有冲突,但与加载的jQuery库(http://rocha.la/jQuery-slimScroll)有冲突。当运行$.slimScroll
时,body
标记被覆盖,以便在滚动中显示苗条效果,这导致window.document.body
为空。删除库和一切正常
相关文章:
- 扩展SVGTextElement时出现Typescript Uncaught TypeError
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- Uncaught TypeError:undefined不是函数-ember js
- Snap()方法导致Uncaught TypeError
- Android在webview中加载带有javascript的html文件,得到Uncaught ReferenceEr
- SlideDown()不会'不能在jQuery中使用After()
- 如何在zepto中实现类似jquery的slideDown()
- 在条件下使用 slideUp() 和 slideDown()
- 尝试使用.ninnerHTMLlog打印数据,获取错误Uncaught TypeError:undefined不是函数
- 尝试将js函数更改为coffeescript时发生Uncaught ReferenceError
- Rails Uncaught ReferenceError:$$未定义为升级到jquery
- 如何在AngularJS中执行slideDown或slideUp
- 懒惰加载插件抛出Uncaught ReferenceError
- Android/Javascript:Uncaught TypeError Object[Object]没有方法'
- Reactjs错误:babel runtime.js:32 Uncaught TypeError:超级表达式必须为nul
- Uncaught ReferenceError:尝试在Android网络视图中访问时未定义函数
- Uncaught InvalidStateError:无法执行'发送'在'WebSocket
- Jquery,Uncaught TypeError:undefined不是函数
- jQuery SlideDown仅当单击另一个“ul”时
- jQuery slideDown ($.slideDown)动画错误:Uncaught TypeError: Canno