【问题标题】:jQuery Flip - flip one div, but show different content based on link clickedjQuery Flip - 翻转一个 div,但根据点击的链接显示不同的内容
【发布时间】:2016-02-22 01:19:01
【问题描述】:

我正在尝试使用jQuery Flip 插件根据所选菜单项翻转卡片。根据菜单项,卡片背面的内容会有所不同。这可能吗?

我在 github 页面上使用 jekyll 模板。我认为您可以使用液体逻辑来确定要在卡片背面打印哪些内容,但不确定(对此是新的)。任何关于如何设置的想法都非常感谢。

<div id="card">
        <div class="front"> <!-- Front of Card -->

           <div id="home" class="col-md-12 main content-panel">

                    <div class="profile-pic">
                        <img src="{{ site.title_image }}" class="img-circle about-image" height="150" width="150" alt="{{ site.title }}" />
                    </div>

                    <h1 class="header author-header" itemprop="headline">{{ site.title }}</h1>

                    <div class="author-text">
                        {{ site.title_description }}
                    </div>
                    {% include nav.html %}

                    {% include social_links.html %}            

                </div> 

              </div> 
              <div class="back"> <!-- Back of Card -->

                <div class="col-md-12 main content-panel">  

           <p>Back of card</p> 
         {% include nav.html %}

      </div>

  </div>  

jQuery:

 $("#card").flip({
  axis: 'y',
  trigger: 'click'
});

这可以通过单击卡片来翻转卡片,但我希望导航/菜单项指示卡片背面的内容。寻找实现这一目标的最佳方法。

【问题讨论】:

    标签: jquery jekyll liquid flip


    【解决方案1】:

    如果您的 page1 和 content1 以及 page2 和 content2,并且您想在 page2 上显示 content2,您可以简单地使用 {{ content }} 标签。如果要在 page2 上显示 content1,则必须使用 for 语句循环浏览导航项。

    这就是理论...现在对于实际代码,我将使用 3 个页面来设置它:一个索引文件、一个 content1 文件和一个 content2 文件。

    您的 content1.md(和 content2.md)如下所示:

    ----
    title: 'Content 1'
    intro: 'Lorem ipsum dolor...'
    ----
    Lorem ipsum dolor sit amet, consectetur adipiscing elit.
    

    您的 index.html(或 _includes 中的 navigation.html)如下所示:

    <div class="container-fluid"> 
    
      <div id="card">
    
         <div class="my-card">
              <div class="front"> 
                <ul class="list-inline">
                  {% for page in site.pages %}
                  <li><a id="{{ page.title | replace: ' ', '-' }}" href="#">{{ page.title }}</a></li>
                  {% endfor %} 
              </div> 
              <div id="contentContainer">
                <div class="back">
                  {% for page in site.pages %}
                  <p id="{{ page.title | replace: ' ', '-' }}">{{ page.intro }} <a href="{{ page.url }}">Read more</a></p>
                  {% endfor %}
                </div>
              </div>
    
         </div>    
      </div>    
    </div>
    

    编码愉快!

    【讨论】:

    • 我能够使该功能正常工作。 goo.gl/K64WfI 现在只是想出将内容带入 index.html 的最佳方式。我可以在包含文件夹中创建一个 content1.html 和一个 content2.html,然后使用 {% include content1.html %} 将它们引入。
    • 有没有办法在液体中说“如果点击了 content1 链接,则显示 {content1} elseif content2 被点击...”?
    • 谢谢,乔斯特!开始更好地了解液体的工作原理。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-08
    • 2014-11-01
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多