湖上湖
1.stopPropgation不行是因为你绑定在li上,其不能阻止同一个节点上的其他事件句柄被调用。而且整体运行没有被终止,后面的if仍然有效并执行。而return则直接结束了。2.减少DOM操作,提高效率。3.可以换种思路,代码如下:$( '.type-2 li' ).on( { click( e ) { let $this = $( this ); $this.toggleClass( 'selected' ).hasClass( 'selected' ) ? e.target.nodeName === 'LI' && $this .children( 'i' ) .remove() : $this .append( ` ` ).focus() }});