为什么我的jQuery代码在blogger条件语句中无法访问?

为什么我的jQuery代码在blogger条件语句中无法访问?,jquery,conditional,blogger,Jquery,Conditional,Blogger,我在Blogger中编写代码,试图使用jQuery删除类,然后添加一些类。条件语句似乎适用于某些样式,但不适用于脚本,并且似乎无法访问,因为它甚至没有登录到控制台 <b:if cond='data:blog.url == "https://testjvtdesigns.blogspot.com/"'> <style> .post { margin-bottom: 50px;

我在Blogger中编写代码,试图使用jQuery删除类,然后添加一些类。条件语句似乎适用于某些样式,但不适用于脚本,并且似乎无法访问,因为它甚至没有登录到控制台

<b:if cond='data:blog.url == "https://testjvtdesigns.blogspot.com/"'>
        <style>
            .post {
                margin-bottom: 50px; 
                width: 100%
            }
        </style>
    <b:else/>
        <script type = "javascript">
            console.log('Im readable');
            $('.blog').removeClass('col-lg-9 col-md-9').addClass('col-lg-12 col-md-12');
        </script>
        <style>
            .side {
                display:none;
            }
        </style>
    </b:if>

.邮政{
边缘底部:50px;
宽度:100%
}
console.log('Im-readable');
$('.blog').removeClass('col-lg-9 col-md-9').addClass('col-lg-12 col-md-12');
.这边{
显示:无;
}

我想做的是以下几点。当一个人进入网站时,侧边栏是存在的,但是当他们进入博客帖子时,侧边栏是不存在的,但是我希望主边栏是全宽的。这就是为什么我要删除该类并添加另一个类。我想我应该提到类是引导的,代码就放在结尾()的正上方。代码中的URL是活动的,如果需要,您可以去查看它。

这能解决问题吗?我删除了type=javascript(它在HTML5中是可选的,应该是text/javascript),并将jQuery放在document.ready中

<b:if cond='data:blog.url == "https://testjvtdesigns.blogspot.com/"'>
        <style>
            .post {
                margin-bottom: 50px; 
                width: 100%
            }
        </style>
    <b:else/>
        <script>
$(document).ready(function(){
            console.log('Im readable');
            $('.blog').removeClass('col-lg-9 col-md-9').addClass('col-lg-12 col-md-12');
});
        </script>
        <style>
            .side {
                display:none;
            }
        </style>
    </b:if>

.邮政{
边缘底部:50px;
宽度:100%
}
$(文档).ready(函数(){
console.log('Im-readable');
$('.blog').removeClass('col-lg-9 col-md-9').addClass('col-lg-12 col-md-12');
});
.这边{
显示:无;
}

您的控制台中有一个错误:
$未定义
看起来您正试图在jquery加载之前运行该脚本

您可以提前调用jquery,稍后加载脚本,或者执行以下操作:

jQuery(document).ready(function($) {
     console.log('Im readable');
     $('.blog').removeClass('col-lg-9 col-md-9').addClass('col-lg-12 col-md-12');
});

我还注意到,您有名为
.blog
.blog
的类-您应该使用不同的名称或ID来实现这一点。

您可以使用
数据:blog.pageType
检查它是索引页还是文章页。现在似乎可以访问它,但我得到一个未捕获的引用错误:$未在控制台中定义。您导入jquery了吗?@Jessica,Rich是正确的,您需要使您嵌入jquery。我假设您将它嵌入到模板中。是的,它位于页面底部。任何对$的调用都需要在jQuery本身的嵌入下面进行。如果您试图访问jQuery嵌入上方的$,您的浏览器不知道$是什么。就是这样,非常感谢您,谢谢您的建议。我正考虑改变它,因为它有相似之处。哈哈:)顺便说一句,我在早些时候加载了jQuery。不用担心-很乐意帮忙