簡體   English   中英

WordPress JavaScript。 代碼在頁腳的腳本標簽中有效,但在JS文件中無效

[英]Wordpress JavaScript. Code works in script tag in footer, but not in a JS file

目前,我正在Wordpress中使用JavaScript,因為這是我們工作的地方。 (我是實習生)。

我有一個可在頁腳的script標記中工作的JavaScript代碼列表,但是當我制作一個JS文件並將其包含在functions.php文件中時,它將無法運行。

我已經使用警報和console.log進行了測試,文件正在按預期運行,這只是我之前運行的代碼無法運行。

我的代碼是這樣的:

const nav = document.querySelector('#main');
let topOfNav = nav.offsetTop;

function fixNav() {
    if (window.scrollY >= topOfNav) {
        document.body.style.paddingTop = nav.offsetHeight + 'px';
        document.body.classList.add('fixed-nav');
    } else {
        document.body.classList.remove('fixed-nav');
        document.body.style.paddingTop = 0;
    }
}

window.addEventListener('scroll', fixNav);





const slider = document.querySelector('.items');
let isDown = false;
let startX;
let scrollLeft;

slider.addEventListener('mousedown', (e) => {
    isDown = true;
    slider.classList.add('active');
    startX = e.pageX - slider.offsetLeft;
    scrollLeft = slider.scrollLeft;
});

slider.addEventListener('mouseleave', () => {
    isDown = false;
    slider.classList.remove('active');
});

slider.addEventListener('mouseup', () => {
    isDown = false;
    slider.classList.remove('active');
});

slider.addEventListener('mousemove', (e) => {
    if (!isDown) return;  // stop the fn from running
    e.preventDefault();
    const x = e.pageX - slider.offsetLeft;
    const walk = (x - startX) * 3;
    slider.scrollLeft = scrollLeft - walk;
});

而且functions.php中的代碼是這樣的:

`wp_enqueue_script('custom', get_template_directory_uri() . '/js/custom.js')`;

JS文件正在加載並運行,它只是代碼,僅在頁腳中的腳本標簽中起作用,而在自定義文件中不起作用。

任何可以指導我朝正確方向發展的人。 不是答案,而是一些提示,以便我可以嘗試自己學習:)

非常感謝。

你可以這樣做

<?php
 // wp_enqueue_script('handle', 'src', 'deps', 'ver', 'in_footer'); ?>
 wp_register_script('custom_script', get_template_directory_uri() . '/js/custom.js', array('jquery'), '1.0.0', true);
 wp_enqueue_script('custom_script');
 ?>

呼叫wp_footer(); </body>標記上方的頁腳中起作用。

為了你

    <?php  
    if (function_exists('load_scripts')) {  
        function load_scripts() {  
           wp_register_script('custom_script', get_template_directory_uri() . '/js/custom.js', array('jquery'), '1.0.0', true);
           wp_enqueue_script('custom_script');
        }  
    }  
    add_action('init', 'load_scripts');  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM