Jquery只适用于一个特定的页面.在其他错误上不显示错误,但不起作用


Jquery only works on one certain page. Shows no errors on the other ones, but does not work

想法:

  • 脚本和php被放在一个php文件中,因此应该可以很容易地插入到不同的页面中

什么有效:

  • 这个剧本在头版上写得很好

什么不起作用:

  • 该脚本在任何其他页面上都不起作用。

  • 脚本不工作时不会出现错误。

我尝试过的:

  • 将脚本移动到页脚、页眉、正文开头。什么都没用。

  • 删除脚本,用CSS做效果(不起作用,对CSS来说很复杂)

脚本+php:

<script>
$(function() {
  $('#lear_forside').hover(function() {
    $('#bestill_forside').css('background-color', 'white');
    $('#bestill_forside').css('color', 'black');
    $('#lear_forside img').attr('src', '<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_h.png');
    $('#bestill_forside img').attr('src', '<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_v_ny.png');
  }, function() {
    // on mouseout
    $('#bestill_forside').css('background-color', 'black');
    $('#bestill_forside').css('color', '#99cc66');
    $('#lear_forside img').attr('src', '<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_h_ny.png');
    $('#bestill_forside img').attr('src', '<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_v.png');
  });
});
</script>
<div id="bestill_lear_forside" class="row">
    <a href="#myModal" role="button" class="btn btn-custom" data-toggle="modal">
        <div id="bestill_forside" class="col-sm-6 svart">
                <div class="pull-right vertical-center half-content-wrapper" style="width: 100%;margin-right: 80px">
                        <img class="pull-left" src="<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_v.png">
                        <span class="pull-right bestill_forside_venstre">Bestill foredrag!</span>
                </div>
            </div>
    </a>
        <a href="http://sookvisuals.com/dev/innbokskontroll/laer-innbokskontroll/" target="_self">
        <div id="lear_forside" class="col-sm-6 hvit">
            <div class="pull-left vertical-center half-content-wrapper" style="width: 100%;margin-left: 80px">
                        <img class="pull-right" src="<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_h_ny.png">
                        <span class="bestill_forside_hoyre">Lær innbokskontroll!</span>
                </div>
         </div>
    </a>
</div>

我想是缺了什么东西,或者是有什么东西在改写剧本。我该怎么办?我应该把剧本插入其他地方吗?

我在标题中包含以下内容:

<?php wp_enqueue_script("jquery"); ?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

页面上有一个错误:-

$('#lear_forside img').attr('src', '<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_h.png');

已更改为

$('#lear_forside img').attr('src', "<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_h.png");

你已经在bloginfo中使用了单引号,有四个地方,请尝试下面的脚本并重新运行代码。

<script>
$(function() {
  $('#lear_forside').hover(function() {
    $('#bestill_forside').css('background-color', 'white');
    $('#bestill_forside').css('color', 'black');
    $('#lear_forside img').attr('src', "<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_h.png");
    $('#bestill_forside img').attr('src', "<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_v_ny.png");
  }, function() {
    // on mouseout
    $('#bestill_forside').css('background-color', 'black');
    $('#bestill_forside').css('color', '#99cc66');
    $('#lear_forside img').attr('src', "<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_h_ny.png");
    $('#bestill_forside img').attr('src', "<?php bloginfo('stylesheet_directory'); ?>/img/ikoner/pil_v.png");
  });
});
</script>

通过用Classes替换所有ID来解决问题。