作者: c君不在

  • 添加页内跳转

    页内跳转,在我这里,其实就是锚跳转(包括回到顶部、直达底部、阅读评论这三个),只是做了些美化和 JS 效果而已,最终效果见页面右侧(单页和非单页有所不同)。

    一开始,我是直接把 HTML/PHP 代码放进 footer.php 文件中的,后来采用 hook 的方法。虽说,就得到的 HTML 结构来说,可能不是非常好;但个人感觉比直接修改 footer.php 好。

    HTML/PHP 代码

    <?php
        // add updown access, needs hook wp_footer() in footer.php
        function up_down() {
    ?>
        <div id="updown">
            <a href="#" title="返回顶部" id="goUp"></a>
            <?php if(is_single()):?>
            <a href="#comments" title="阅读评论" id="goComments"></a>
            <?php endif;?>
            <a href="#footer" title="直达底部" id="goDown"></a>
        </div>
    <?php
        }
        add_action('wp_footer', 'up_down');
    ?>
    

    使用这种方法,需要 footer.php 文件中有调用到 wp_footer() 函数,否则是无法 hook 的。
    (更多…)

  • WordPress带Home链接导航栏

    WordPress 3.0 之后,我们可以使用 wp_nav_menu 来生成导航菜单,这样可以支持自定义菜单。

    若没有在后台中添加菜单,那么该函数就会 fallback 回 wp_page_menu。而默认情况下,这样产生的导航栏是没有 home 菜单的。

    添加 home 菜单的方法也很简单,在 functions.php 文件中添加以下代码即可:

    /**
     * Get our wp_nav_menu() fallback, wp_page_menu(), to show a home link.
     */
    function dj_page_menu_args( args ) {args['show_home'] = true;
        return $args;
    }
    add_filter( 'wp_page_menu_args', 'dj_page_menu_args' );
    

    其中,参数 show_home 的可取值有:

    0 (false) – default;
    1 (true);
    <any text> – 用来替换默认的 “home” 文字

  • 都是换行惹的祸

    在使用以下 PHP 代码时遇到了些问题。

    # list.txt
    /*
        Be More.mp3
        Hello.mp3
        Drift Away.mp3
        Panda Sneeze.mp3
    */
    lines = file("list.txt");
    foreach (lines as line){
        echo filesize(line);
        // code above get results like following except the last line:
        // Warning: filesize() [function.filesize]: stat failed for songs/Hello.mp3 in ...
        # echo filesize("songs/Hello.mp3");  // this'll be ok
    }
    

    (更多…)

  • 我也来DIY主题

    最近终于狠下心来将搁置已久的主题继续做了下来。

    由于对配色不在行,所以采用了比较简单的黑白色(虽然,简单了许多,不过对该突出的如何配色也好是为难了我)。

    采用的是单栏结构,所以侧边的小工具去掉了,因此,原本为了此而存在的插件也可以停用了。

    评论处,由于 pingback 不多,看不出多大的影响,所以,暂时没有将两者分开处理,甚至还没对 pingback 做特别的样式处理。

    评论框是直接调用系统提供的 comment_form 函数生成,表情的添加采用为原生comment_form添加表情一文所提的方法。

    另外,还采用了 willin 提供的 PageNavi、comment_mail_notify、Ajax_comments 和 Avatar 头像缓存等一系列代码。

    目前,单篇文章内暂时没有相关文章、随机文章等。

    对于 404 页面,提示错误,然后提供 10 篇随机文章。

    关于浏览器兼容处理方面,由于比较大量地使用了 CSS3 中的圆角属性,所以,在 IE 中看起来会比较的难看。我尽量地使布局不会发生太大的变形,不过,由于 hack 得不多,所以,存在的像素差肯定是有的,不过测试了一下,IE6/7/8 中应该都没有太大的问题。不过,针对 IE6 做了一些提示,建议升级浏览器或使用别的浏览器。

    总的来说,这是一个极其简洁的主题。而且,目前的功能只是一些很基本的功能。至于别的使博客更加美观、人性化的功能,以后再慢慢添加吧。

  • 3个白痴

    总觉电影限于片长,剧情通常不怎,所以很少看。

    最近看了一部 09 年的片子,很不错,片名《Three Idiots》。

    印度片,印象中只有高中时看过一部,也很不错,可惜忘了叫什么名字。中国片大多沉闷没营养;美国片劲爆刺激,动不动拯救世界;这部印度片给我一种印度式幽默(我也不知道这是什么玩意,⊙﹏⊙b汗)。

    教育之名

    查了一下 09-10 年的世界人口排名,中国占世界人口的 19.77%,印度占 17.52%。现在即使没有超过中国,大概也不远了。

    人口基数的剧增,毫无疑问会带来巨大的就业压力。在中国,研究生都是满大街跑了。印度的具体情况我不了解,不过从片子来看,工程师是一个很高的职位,望子成龙——无论出于什么初意,全世界大概都一样。

    竞争的激烈,带来的就是应试教育。考察一个人的真实水平耗时耗力太大了,最简单的方法还是考试,以成绩分高下。素质教育,在中国谈了那么多年,我所见处,未有改进。

    越是高级的学府,在这方面的压力就越大。进得去的,都不会自认自己输于别人。

    于是,片中唯一的悲剧发生了,Joy 留下最后一句:“I Quit”,然后走了。葬礼上,一心等着儿子成为工程师的老父痛不欲生。自杀还是谋杀?

    专业技能上,老师是专家。但教学呢?

    (更多…)

  • 流水落花春去也,天上人间!

    帘外雨潺潺,春意阑珊。罗衾不耐五更寒。梦里不知身是客,一晌贪欢。
    独自莫凭栏,无限关山。别时容易见时难。流水落花春去也,天上人间!

    —— 浪淘沙令·帘外雨潺潺    李煜

    以下来自:说的是青楼故事,写的是红楼文章

    窗外雨绵绵,灯火珊阑。 薄纱不耐凌晨寒。 梦里不知身揽客,一宿贪欢。
    独自莫品兰,无限唇香, 进去容易出来难。 流水落花春去也,天上人间。

    (更多…)

  • 灰名单

    灰名单,即介于黑名单和白名单之间。时而一路通行,时而无路可行。

    我的博客大概处于 ISP 的灰名单中,因为时而飞速访问,时而千辛万苦得个无法访问。之所以认为是ISP的原因,因为 traceroute 的结果是一开始就卡住了。只是不知道是教育网的特有的现象?最戏剧性的是,通常在这种情况下,我是可以访问同一 IP 的 vastars 的博客。只能说,人生啊,太有趣了~~~

    介于自己博客处于灰名单这一猜测,于是,毫不犹豫地将其加入到自动代理的列表中。这样对自己说,位于国外的博客就应该用国外的 IP 来伪装在国外上。

  • CSS逆序列表

    默认的有序列表是从1开始递增计数的,如果想使用CSS将其逆序,那么可以使用以下方法。

    <!-- HTML 代码 -->
    <ol><strong>逆序</strong>
        <li>line 1</li>
        <li>line 2</li>
        <li>line 3</li>
        <li>line 4</li>
        <li>line 5</li>
    </ol>
    

    (更多…)

  • Table注意事项

    首先是一段 HTML 代码:

    <table id="tb">     
        <tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
        <tr><td>5</td><td>6</td><td>7</td><td>8</td></tr>
        <tr><td>9</td><td>10</td><td>11</td><td>12</td></tr>            
        <tr><td>13</td><td>14</td><td>15</td><td>16</td></tr>
    </table>
    

    DOM解析

    对于一段 table 的 HTML 代码,即使没有显式写出 tbody 结构,浏览器在解析的时候都会加上 tbody 结构。所以,对于以上代码,若想获取第一行,需要使用代码:

    document.getElementById('tb').lastChild.firstChild; //第一行
    //document.getelementById('tb').lastChild 得到的不是最后一行而是 tbody
    

    (更多…)

  • CSS3中box-shadow的性能问题

    在对主题评论列表处理的过程中,突然发现嵌套回复性能低下,页面拖动也一卡一卡的。排除法后锁定了目标——box-shadow。

    于是做了一些实验,发现如果大量使用box-shadow,又或者容器比较大的时候,性能都会降低很多。如果容器不是很大,数量不是很多,倒没多大的感觉。

    如果将box-shadow应用到评论列表中,这个问题就比较明显了,特别是在评论不分页、支持嵌套的情况下。

    无论是Firefox还是Chrome,对box-shadow的支持都存在这个问题,Opera则好上很多,带来的迟滞感不是很强。

    模仿评论列表小小地做了一个Demo,可以体验到带box-shadow和不带box-shadow的明显区别。

    更极端的一个Demo