1

stefanz 编写的以下代码在 jsfiddle 上运行良好,但我无法在我的本地 wordpress 网站上运行它。

这是小提琴: http: //fiddle.jshell.net/9ae3T/

这是代码:

<ul class="tabs js-view-mode">
  <li><a href="#list">List</a></li>
  <li><a href="#grid">Grid</a></li>
  <li><a href="#full">Full</a></li>
</ul>

<section id="viewMode">
  <div id="list">here is list mode content</div>
  <div id="grid">here is grid mode content</div>
  <div id="full">here is full mode content</div>
</section>


$(document).ready(function(){
  var wrap = $('#viewMode'),
      viewMode = $.cookie( 'view-mode' );
  wrap.children().hide();

  $('.js-view-mode').on( 'click', 'a',function( e ){
    e.preventDefault();
    var t = $(this),
        type = t.attr('href');

    $(type).fadeIn()
      .siblings().fadeOut();

    viewMode = $.cookie( 'view-mode', type );

  });

  if ( viewMode ) {
    $('.js-view-mode a[href='+ viewMode +']').trigger('click');
  } else {
    $('.js-view-mode li:first a').trigger( 'click' );
  }

});

有人有建议吗?这就是我的想法(viewmode.js 是上面的代码):

<script language="javascript" type="text/javascript" src="<?php echo bloginfo('stylesheet_directory') ?>/js/viewmode.js"></script>
        <script language="javascript" type="text/javascript" src="<?php echo bloginfo('stylesheet_directory') ?>/js/cookie.js"></script>


        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
4

2 回答 2

1

在包含您自己的文件之前包含 jQuery ,因为它显然使用了 jQuery。

另外,我希望您意识到您不能将 HTML 放入.js文件中。

于 2013-06-01T21:03:53.967 回答
1

您正在加载的是您在jQuery之前的javascript 文件,这是一个硬依赖项。

首先包含 jQuery,然后包含您的文件。

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js">
 </script>
 // include jQuery First
<script language="javascript" type="text/javascript" 
     src="<?php echo bloginfo('stylesheet_directory') ?>/js/viewmode.js">
</script>
 <script language="javascript" type="text/javascript" 
     src="<?php echo bloginfo('stylesheet_directory') ?>/js/cookie.js">
</script>
于 2013-06-01T21:04:07.433 回答