HTML5 canvas в синтаксисе массива jquery - PullRequest
0 голосов
/ 14 декабря 2011

Я пытаюсь не дублировать код, создавая два объекта запроса, но не уверен в синтаксисе.Любая помощь будет оценена

 var headers = $("h2.page-header");
var nav = $("ul#nav-main li a.active");
var links = [headers, nav];

    links.each(function() {
        var linkWidth = $(this).outerWidth();
        var canvas = $("<canvas></canvas>");
        canvas.attr({width: linkWidth, height: 48});
        var ctx = canvas.get(0).getContext("2d");

        ctx.save();
              ctx.beginPath();
              ctx.moveTo(linkWidth, 45.0);
              ctx.lineTo(6.5, 46.3);
              ctx.lineTo(0.0, 0.0);
              ctx.lineTo(linkWidth-2, 2.0);
              ctx.lineTo(linkWidth-4, 45.0);
              ctx.closePath();
              ctx.fillStyle = "rgb(27, 73, 218)";
              ctx.fill();
              ctx.restore();

        var image = canvas.get(0).toDataURL("image/png");
        $(this).css({background: "url('"+image+"') no-repeat"});

    });

1 Ответ

1 голос
/ 14 декабря 2011

Вы можете просто вы простой CSS групповой селектор :

var links = $("h2.page-header, ul#nav-main li a.active");

если, если вы хотите разделить два селектора, используйте метод .add() :

var links = $("h2.page-header").add("ul#nav-main li a.active");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...