将rel属性更改为Jquery中的数据

时间:2015-10-31 15:44:27

标签: jquery html5

我尝试进行HTML5验证。提到我不应该使用rel属性,因为我必须使用注册的关键字。 我搜索了一些文章并将所有'rel'更改为'data-id',然后脚本停止正常工作。我建议改变rel属性,但我不知道改变这两个代码行。我在网页上使用代码作为样式转换器。

switchStylestyle(this.getAttribute("rel")); 
$('link[rel*=style][title]').each(function(i) 

Jquery听了下面的内容:

$(document).ready(function() {
    $('.styleswitch').click(function()
    {
        switchStylestyle(this.getAttribute("rel"));
        return false;
    });
    var c = readCookie('style');
    if (c) switchStylestyle(c);
});

function switchStylestyle(styleName)
{
    $('link[rel*=style][title]').each(function(i) 
    {
        this.disabled = true;
        if (this.getAttribute('title') == styleName) this.disabled = false;
    });
    createCookie('style', styleName, 365);
}

HTML5听了下面的内容:

     <li><a href="#" rel="light" class="styleswitch">Light</a> </li>
     <li><a href="#" rel="dark" class="styleswitch">Dark</a> </li> 

谢谢。

1 个答案:

答案 0 :(得分:0)

我想应该是这样的,但它不起作用。

switchStylestyle(this.getAttribute("data-id")); <-- jquery
<li><a href="#" data-id="light" class="styleswitch">Light</a> </li> <--html5

谢谢你的提示。我想我仍然需要'a'思考因为我使用框架(bootstrap)。 (offtopic)

(function($)
{
    $(document).ready(function() {
        $('.styleswitch').click(function()
        {
            switchStylestyle(this.getAttribute("rel"));
            return false;
        });
        var c = readCookie('style');
        if (c) switchStylestyle(c);
    });

    function switchStylestyle(styleName)
    {
        $('link[rel*=style][title]').each(function(i) 
        {
            this.disabled = true;
            if (this.getAttribute('title') == styleName) this.disabled = false;
        });
        createCookie('style', styleName, 365);
    }
})(jQuery);



function createCookie(name,value,days)
{
    if (days)
    {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name)
{
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++)
    {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}
function eraseCookie(name)
{
    createCookie(name,"",-1);
}