【问题标题】:function.php code related to Revolution Slider与Revolution Slider相关的function.php代码
【发布时间】:2021-09-06 13:06:38
【问题描述】:

我已经设置了一个简单的 JS,只是在单击 id 为“按钮”的按钮时发出警报消息。当我在 Revolution Slider Custom CSS/JS 字段中插入代码时,它工作正常。

function hello(){
        alert("Hello! I am an alert box!!");
}
jQuery("#button").click(hello);

但是子主题的function.php文件不行,这是为什么呢?

function button_fn() {
    ?>
        <script>
            function hello(){
                alert("Hello! I am an alert box!!");
            }
            jQuery("#button").click(hello);
        </script>
    <?php
}
add_action('wp_enqueue_scripts', 'button_fn');

【问题讨论】:

标签: javascript wordpress revolution-slider


【解决方案1】:

试试下面的代码:

function button_fn() {
    <script>
    function hello(){
        alert("Hello! I am an alert box!!");
    }
    jQuery(function() {
        jQuery(document).on('click', '#button', function(){ 
            hello();
        })
    })
    </script>
}

add_action('wp_enqueue_scripts', 'button_fn');

【讨论】:

  • @HowardE 感谢提醒。答案现已更新。
【解决方案2】:

这里的问题是你试图在没有任何依赖关系的情况下将脚本加入队列,所以很可能 jQuery 还没有加入队列。不要使用wp_enquque_scripts,而是尝试优先级高于20 的wp_footer。20 是enqueue scripts hook 触发的地方。

function button_fn() {
    ?>
        <script>
            function hello(){
                alert("Hello! I am an alert box!!");
            }
            jQuery("#button").on('click', function(){
                 hello()}
            );
        </script>
    <?php
}
add_action('wp_footer', 'button_fn', 30);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    • 2020-10-30
    • 1970-01-01
    • 2022-12-31
    • 2021-09-06
    • 1970-01-01
    相关资源
    最近更新 更多