首页 > 解决方案 > @yield 阻止我收获 DOM

问题描述

所以,我有标准的 app.blade.php 文件和 home.blade.php 文件,该应用程序在 Laravel 功能中有一个 @yield 构建,但问题是当我尝试选择并呈现事件侦听器时它不起作用但是当我从应用程序执行此操作时,它可以工作。

家 -

<p>First Paragraph</p>
<p>Second Paragraph</p>
<p>Yet one more Paragraph</p>

<script>
    $( "p" ).click(function() {
        $( this ).slideUp();
    });
</script>

它不起作用

应用程序 -

 <main class="py-4">
        @yield('content')
    </main>
</div>

<p>First Paragraph</p>
<p>Second Paragraph</p>
<p>Yet one more Paragraph</p>
<script>
    $( "p" ).click(function() {
        console.log(123);
    });
</script>

作品!...

标签: javascriptphpjquerylaravel

解决方案


当 DOM 未准备好时,您可能正在尝试操作节点。

确保你包装你的代码

$( document ).ready(function(){})

这将告诉 DOM 仅.ready(function(){})在 DOM 完全加载时才执行其中的内容。


推荐阅读