2012-02-17 6 views
0

Скажем, у меня есть холст тег в моем HTML5 документаДобавить атрибуты холста динамически?

<canvas id="fooBar" width="500" height="200"></canvas> 

И у меня есть пустой якорь тег

<a href="" id="spin">Spin</a> 

и я строю свой холст в голову

var fooCanvas = document.getElementById("fooBar"); 
var barContext = fooCanvas.getContext("2d"); 

Is есть способ, которым я могу добавить:

barContext.fillText("fubar", x,y); 

Динамически, нажав на значок привязки? Я хочу, чтобы в моей JS была переменная, которая не всегда имеет одно и то же значение, и нажатие тега будет обновлять атрибут canvas fillText при каждом нажатии ссылки. Моя идея преодолеть это - использовать jQuery и что-то вроде этого:

$(document).ready(function(){ 
     $("a").click(function(event){ 
      // Something here 
     }); 
    }); 

Очевидно, что это будет работать на каждый тэг у меня есть в документе, поэтому я уточню, что в дальнейшем, но я не слишком уверен, что на синтаксис требуется, чтобы добавить этот атрибут брезентовый к моему холст? Есть идеи?

+0

barContext не является атрибутом, который вам нужно будет «добавить к вашему холсту». Просто вызовите функцию fillText(), и она будет нарисована. – Bergi

+0

Да, вы правы - это путало мою терминологию. Благодарю за ваш ответ! – srrolph

ответ

0

Да:

var fooCanvas = document.getElementById("fooBar"); 
var barContext = fooCanvas.getContext("2d"); 

$(document).ready(function(){ 
    $("a").click(function(event){ 
     barContext.fillText("fubar", x,y); 
    }); 
}); 

Хотя вы можете захотеть использовать button элементы вместо a, так как они на самом деле не ссылки.

+0

Удивительно просто - спасибо! Также изменил его и на кнопку. – srrolph

Смежные вопросы