沉浸式阅读
Beta

jquery实现tag平均宽度

©著作权     黑土 Ai 助手 订阅 网页特效       2017-07-27       1225      0      0      0      2017-07-27
学习要点:jquery实现tag平均宽度

jquery实现tag平均宽度

jquery

function widget_tags(tt) {
    var $it = tt.find($('li'));
    var mw = tt.width();
    var index = 0;
    var t = 0;
    $it.each(function() {
        var $c = $(this);
        var ow = $c.outerWidth(true);
        var bw = ow - $c.outerWidth();
        t += ow;
        if (t > mw) {
            var $pt = $c.prev();
            var p = mw - (t - ow);
            aw($pt, p + bw);
            t = ow;
        }
        if ($c.is(':last-child')) {
            var p = mw - t;
            aw($c, p + bw);
        }
    });
    function aw($pt, adw) {
        var r = ranges(index, $pt.index());
        var d = Math.floor(adw / r.length);
        var e = adw % r.length;
        for (var i in r) {
            var $im = $it.eq(r[i]);
            $im.width($im.width() + d);
        }
        $pt.width($pt.width() + e);
        $pt.css('margin-right', 0);
        index = $pt.index() + 1;
    };
    function ranges(l, h, s) {
        var mx = [];
        var i, e, p;
        var wr = s || 1;
        var cs = false;
        if (!isNaN(l) && !isNaN(h)) {
            i = l;
            e = h
        } else if (isNaN(l) && isNaN(h)) {
            cs = true;
            i = l.charCodeAt(0);
            e = h.charCodeAt(0)
        } else {
            i = (isNaN(l) ? 0 : l);
            e = (isNaN(h) ? 0 : h)
        }
        p = ((i > e) ? false: true);
        if (p) {
            while (i <= e) {
                var cc = String.fromCharCode(i);
                mx.push(((cs) ? cc: i));
                i += wr
            }
        } else {
            while (i >= e) {
                var cc = String.fromCharCode(i);
                mx.push(((cs) ? cc: i));
                i -= wr
            }
        }
        return mx;
    }
};

使用

html

<ul class="amz-widget-tags am-cf">
    <li class="am-badge"><a href="#">jquery</a></li>
    <li class="am-badge"><a href="#">标签</a></li>
    <li class="am-badge"><a href="#">分页</a></li>
    <li class="am-badge"><a href="#">tags</a></li>
    <li class="am-badge"><a href="#">编辑器</a></li>
    <li class="am-badge"><a href="#">destoon</a></li>
    <li class="am-badge"><a href="#">poscms</a></li>
    <li class="am-badge"><a href="#">图片</a></li>
    <li class="am-badge"><a href="#">百度</a></li>
    <li class="am-badge"><a href="#">调用</a></li>
</ul>
jquery

$(function(){
    widget_tags($('.amz-widget-tags'));
    // 窗口大小改变是重新执行,自适应页面适用。
    $(window).resize(function(){ 
        if($(".amz-sidebar").css('display')!='none'){ //判断ul的上级元素是否显示,改成自己的就好
            $('.amz-widget-tags').find('li').attr('style','');
            widget_tags($('.amz-widget-tags'));
        }
    });
});
css

.amz-widget-tags li { float: left;margin-top: 5px;margin-right: 6px;}
.amz-widget-tags a {color: #fff;font-size: 1.5rem;font-weight: normal;}
.am-badge{display:inline-block;min-width:10px;padding:0.25em 0.625em;font-size:1.2rem;font-weight:bold;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999999;border-radius:0;}

tag.png

随机颜色在后面会分享

 
本文标签: #jquery #tags #标签

本文标题: jquery实现tag平均宽度

本文链接: https://www.mbkfw.com/course/w-397.html (转载时请注明来源链接)

本文说明: 有问题或投稿请发送至: 邮箱/kf@dtmuban.com    QQ/290948585

特别鸣谢: 如果您觉得本文对您有帮助,请给我们一个小小的赞,收藏本文更利于反复学习哦!

0

圈友点评

文明上网理性发言,请遵守网络评论服务协议
destoon程序前端开发标签生成器

下班PC阅读不方便?

手机也可以随时学习开发

微信关注公众号“商企云服”
"模板开发网前端开发教学"
每日干货技术分享
 


色彩

开发者社区-397

jquery实现tag平均宽度

分享来自「 MBKFW.COM 」

①保存图片到相册
②打开微信扫一扫

正在生成海报, 请稍候
【开发者社区】jquery实现tag平均宽度 的推广海报
复制海报
下载海报
×

《客户实名在线注册登记》售后一直都在!

关注

微信
关注

微信扫一扫
不同的环境体验

幸运大转盘,好礼等您拿

模板开发网公众号

模板开发网微信小程序

代授权

程序
授权

黑小二

联系
客服

很高兴为您服务
尊敬的用户,欢迎您咨询,我们为新用户准备了优惠好礼。咨询客服

联系客服:

在线QQ: 290948585

客服电话: 18605917465

E_mail邮箱: kf@dtmuban.com

微信公众号: 商企云服

微信小程序: 模板开发

QQ客服 微信客服DT授权代办 在线交谈 智能小云 黑土AI

工作时间:

周一至周五: 09:00 - 18:00

APP下载

安卓
APK

模板开发网安卓版APP

反馈

我要
反馈