jQuery 插件使用:href 或 data-url

jQuery plugin usage: href or data-url

我正在创建一个 jQuery,它将一些 li 转换为文件夹块。

我无法决定哪个更适合插件使用:

url 在 href

<ul id="folders">
    <li><a href="http://ggg.net/content/?folder=hospital">Hospital Folder</a></li>
    <li><a href="http://ggg.net/content/?folder=school">School Folder</a></li>
    <li><a href="http://ggg.net/content/?folder=house">House Folder</a></li>
</ul>

url 在数据中-url

<ul id="folders">
    <li data-url="http://ggg.com/content/?folder=hospital">Hospital Folder</li>
    <li data-url="http://ggg.com/content/?folder=school">School Folder</li>
    <li data-url="http://ggg.com/content/?folder=house">House Folder</li>
</ul>

插件启动后的输出HTML:

<div id="folders">
    <div class="row">
        <div class="col-md-3 folder">
            <a href="http://ggg.com/content/?folder=hospital">
                <i class="fa fa-folder"></i>
                <p>Hospital Folder</p>
            </a>
        </div>
        <div class="col-md-3 folder">
            <a href="http://ggg.com/content/?folder=school">
                <i class="fa fa-folder"></i>
                <p>School Folder</p>
            </a>
        </div>
        <div class="col-md-3 folder">
            <a href="http://ggg.com/content/?folder=house">
                <i class="fa fa-folder"></i>
                <p>House Folder</p>
            </a>
        </div>
    </div>
</div>

When the JavaScript doesn't run,哪个比较好?作为链接工作的链接或什么都不做的数据属性?

使用有真实链接的版本。让你的 JavaScript unobtrusive. Use progressive enhacement.


就此而言,似乎根本不需要使用 JavaScript 来转换 DOM。只需按照您希望的方式编写 HTML 即可避免闪现,因为 JavaScript 稍后会重写它。