WordPress:JS 已加载但其中的功能无法正常工作
WordPress: JS is loaded but functions in it are not working
我有一个名为“main.js”的 js 文件,我使用 function.php 文件中的 wp_enqueue_script 将其排队。此文件正在我的页面-{slug} 中加载。php,但其中的函数根本没有执行。
function.php 文件:
function df_enqueue_scripts() {
wp_enqueue_script( 'main-js', get_template_directory_uri() . '/assets/src/library/js/main.js', array(), '1.0', true );
wp_enqueue_script( 'bootstrap-js', get_template_directory_uri() . '/assets/src/library/js/bootstrap.min.js', array( 'jquery' ), '5.6', true );
}
// Register the df_enqueue_scripts with wp_enqueue_scripts hook.
add_action( 'wp_enqueue_scripts', 'df_enqueue_scripts' );
页面-{slug}.php 文件:
<?php
get_header();
?>
<button type="button" id="ad-button">Ad</button>
<button type="button" id="mm-button">MM</button>
<button type="button" id="photo-button">Photography</button>
<div id="display-photo"></div>
<div id="display-mm"></div>
<div id="display-ad"></div>
<?php
get_footer();
main.js 文件:
$( '#photo-button' ).on( 'click',
function () {
$( '#display-photo' ).html("Hello <b>world!</b>");
}
);
简而言之,我在 main.js 文件中写入任何内容,我期望的更改不会发生或不会反映在我的页面-{slug}.php 文件中。
我认为,jQuery 错误用法的问题。
可能,用 jQuery 包装函数允许使用 $ 变量
并能解决问题
jQuery(function($){
$( '#photo-button' ).on( 'click',
function () {
$( '#display-photo' ).html("Hello <b>world!</b>");
}
);
})
第二个要求是将jQuery设置为依赖
您的脚本并将脚本版本更新为 1.1.
wp_enqueue_script( 'main-js', get_template_directory_uri() . '/assets/src/library/js/main.js', array( 'jquery' ), '1.1', true );
我有一个名为“main.js”的 js 文件,我使用 function.php 文件中的 wp_enqueue_script 将其排队。此文件正在我的页面-{slug} 中加载。php,但其中的函数根本没有执行。
function.php 文件:
function df_enqueue_scripts() {
wp_enqueue_script( 'main-js', get_template_directory_uri() . '/assets/src/library/js/main.js', array(), '1.0', true );
wp_enqueue_script( 'bootstrap-js', get_template_directory_uri() . '/assets/src/library/js/bootstrap.min.js', array( 'jquery' ), '5.6', true );
}
// Register the df_enqueue_scripts with wp_enqueue_scripts hook.
add_action( 'wp_enqueue_scripts', 'df_enqueue_scripts' );
页面-{slug}.php 文件:
<?php
get_header();
?>
<button type="button" id="ad-button">Ad</button>
<button type="button" id="mm-button">MM</button>
<button type="button" id="photo-button">Photography</button>
<div id="display-photo"></div>
<div id="display-mm"></div>
<div id="display-ad"></div>
<?php
get_footer();
main.js 文件:
$( '#photo-button' ).on( 'click',
function () {
$( '#display-photo' ).html("Hello <b>world!</b>");
}
);
简而言之,我在 main.js 文件中写入任何内容,我期望的更改不会发生或不会反映在我的页面-{slug}.php 文件中。
我认为,jQuery 错误用法的问题。 可能,用 jQuery 包装函数允许使用 $ 变量 并能解决问题
jQuery(function($){
$( '#photo-button' ).on( 'click',
function () {
$( '#display-photo' ).html("Hello <b>world!</b>");
}
);
})
第二个要求是将jQuery设置为依赖 您的脚本并将脚本版本更新为 1.1.
wp_enqueue_script( 'main-js', get_template_directory_uri() . '/assets/src/library/js/main.js', array( 'jquery' ), '1.1', true );