javascript - Smarty - 我如何添加 "show more links tab"

标签 javascript jquery html smarty

如何在显示 10-15 个链接而不是显示 100-200 个链接后添加“显示更多链接选项卡”?我想一开始只显示 10-15 个链接,然后当有人点击时显示其余的隐藏链接以节省页面空间。

{if $listing_styles.links}
  <div id="link_list" {if $listing_styles.embeds}style="display:none"{/if}>
    {foreach from=$thisepisode.embeds key=id item=val name=titles}

      <div class="span-16 inner-16 notopmargin embed-selector" style="background: #F1F2F1 url('{$embed_languages[$val.lang].flag}') 15px 17px no-repeat;" onclick="changeEmbed({$val.id},{$global_settings.countdown});">

        <h5 class="left">
          {$embed_languages[$val.lang].language}
          {if $val.type} - 
            <a class="link" href="javascript:void(0);" {if $smarty.foreach.titles.first}class="current"{/if} id="selector{$val.id}"><span>{$val.type}</span></a>
          {/if}
        </h5>

        <ul id="filter" style="width:200px;float:right;margin-top: 0px;">
          {if $val.link}
            {if $global_settings.adfly.id}
              <li class="current" style="float:right">
                <a href="http://**f.ly/{$global_settings.**fly.id}/{$val.link|replace:"http://":""}" target="_blank">{$lang.open_video}</a>
              </li>
          {else}
              <li class="current" style="float:right">
                <a href="{$val.link}" target="_blank">{$lang.open_video}</a>
              </li>
            {/if}
          {/if}
        </ul>
      </div>

    {/foreach}
  </div>
{/if}

最佳答案

检查这个插件。非常适合您想做的事情:

http://jedfoster.com/Readmore.js/

根据您的 html,这里有一个 fiddle 展示了它与 readmore 插件的配合使用。我刚刚将完整的 readmore 代码复制到 fiddle 中,但您可能希望将其添加为引用 js 文件(javascript 中第 8 行以下的代码是插件代码)。

http://jsfiddle.net/6px7qso0/1/

基本上,在您的页面上下载并添加对 readmore.js 文件的引用(通过我在评论中发布的链接从 github 获取文件)。然后将以下代码添加到您的页面。

{literal}
<script type="text/javascript">
    jQuery(function(){
        jQuery('#link_list').readmore({
            speed: 75,
            collapsedHeight: 400,
            lessLink: '<a href="#">Read less</a>'
        });
    });
</script>    
{/literal}

查看插件选项以更好地控制插件。

关于javascript - Smarty - 我如何添加 "show more links tab",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29617826/

相关文章:

css - div 内的左/右浮动按钮

javascript - 使用 json 创建单个 html 表

javascript - 在 Highcharts 中更改 Y 轴垂直线颜色

javascript - 通过 DOM 函数附加新元素,还是使用 HTML 标签附加字符串,哪个更好?

javascript - 使用 jQuery 在祖先和后代之间插入元素

javascript - 如何使淡入/淡出只发生一次

javascript - underscore js _grouby 浏览器差异

javascript - 将 sweetalert2 与 node.js 和express.js 一起使用

javascript - 将 PowerShell 日期转换为 JavaScript 日期(Unix 时间)

javascript - React 上的 componentWillReceiveProps 在触发时不会传递当前属性