Raphael JS, как включить несколько иконок на сайт? с классом вместо ID - PullRequest
5 голосов
/ 18 января 2012

Как я могу включить несколько иконок из Raphaël (http://raphaeljs.com/icons/) на одном сайте?

Мне не удалось включить их через class = "icon", просто с id = "icon"Поскольку я не очень хорош в JavaScript, я искал в Интернете, но ничего не нашел.

Единственное, что я нашел в блоге:

    bubble: "M16,5.333c-7.732,0-14,4.701-14,10.5c0,1.982,0.741,3.833,2.016,5.414L2,25.667l5.613-1.441c2.339,1.317,5.237,2.107,8.387,2.107c7.732,0,14-4.701,14-10.5C30,10.034,23.732,5.333,16,5.333z",

a = j[b]("column-1")[f]("h2");
for (var z = a.length; z--;) {
   l = a[z];
   l && g(l[f](i)[0], 32, 32).path(k.bubble).attr(m);
}

.js http://dmitry.baranovskiy.com/site2.js

Блог http://dmitry.baranovskiy.com/

Поскольку он использует «пузырь» в промежутке перед каждым сообщением.

Есть ли способ включить его в класс вместо идентификатора?как я могу включить его через идентификатор

var example = Raphael("example", 50, 60);
example.path("icon-string").attr({fill: "#fff", stroke: "#333"});

, а затем включить его через

<span id="example">

1 Ответ

7 голосов
/ 19 января 2012

Вам нужно поместить свои элементы в массив, а затем зациклить его:

var elements = document.querySelectorAll('.paper');
for (i=0; i<elements.length; i++) {
    paper = Raphael(elements[i], 50, 50)
    paper.path(bubble).attr({"fill": "#333"})
}

Или версию jQuery, чтобы сделать ее совместимой с IE 6 & 7

$('.paper').each(function(i){
        paper = Raphael($(this)[0], 50, 50)
        paper.path(bubble).attr({"fill": "#333"})
})

Youможете найти демо здесь: http://jsfiddle.net/CHEP9/

...