我有一个仅在我的website.com/index.php上运行的javascript,不包括所有链接,例如website.com/products/或website.com/services/。问题是,当我搜索某些内容时,它会将我带到website.com/search?=somethingsomething,并且应该只在我的主页上运行的javascript也会发生在那里。
如何排除javascript在所有其他根/页面中运行?
我正在使用Wordpress,我应该在functions.php页面中添加内容还是直接添加到我的.js文件中?
感谢。
答案 0 :(得分:0)
有两种方法可以解决这个问题
方法1:仅在主页上排队
将主页只放置在脚本自己的文件中,然后在排队之前检查你是否在主页上。
add_action( 'wp_enqueue_scripts', 'so_48392593' );
function so_48392593() {
if( is_front_page() ) {
wp_enqueue_script( 'myscript', 'myscript.js' );
}
}
方法2:检查它是否为带有JavaScript的主页
WordPress会将home
类添加到<body>
标记(如果它是主页),因此您可以在脚本运行之前对其进行测试。这个方法不太简单,因为插件或主题可以使用body_class
过滤器更改正文类
if( jQuery( 'body' ).hasClass( 'home' ) ) {
// Your JavaScript goes here
}
答案 1 :(得分:-2)
https://www.w3schools.com/tags/tag_comment.asp
引用:
提示和注释 您还可以使用评论标记来隐藏&#34;隐藏&#34;来自不支持脚本的浏览器的脚本(因此他们不会将它们显示为纯文本):
<script type="text/javascript">
<!--
function displayMsg() {
alert("Hello World!")
}
//-->
</script>
注意:注释行(//)末尾的两个正斜杠是JavaScript注释符号。这可以防止JavaScript执行 - &gt;标签