Как сделать плагин для Kinetic.js? (Отредактировано)

Повторно публикую вопрос. Я не объяснил вопрос должным образом раньше, так что извините за это.

Надеюсь, это компенсирует это. Я планирую сделать плагин для Kineticjs. Теперь я не эксперт в этом, поэтому нужна помощь.

Я видел несколько примеров в Интернете, но они не очень помогли. Некоторые учебники Jquery, которые используют элементы DOM, и вы можете написать свою функцию, чтобы изменить поведение или добавить функциональность и все такое.

Например, для создания плагина jquery мы можем сделать что-то вроде:

       (function($) {
             $.fn.nameofthefunction = function() {
           // Add plugin code here
               here I can manipulate dom elements and all..
             };
       })(jQuery);

Что мне нужно, так это использовать встроенные функции kinetic.js, чтобы сделать соответствующий плагин. Kinetic.js - это библиотека холста HTML5. ТАК, если я сделаю что-то вроде

    var image = new Kinetic.Image({ 
    x: 325 - 45,
    y: 145 - 83,
    image: beeObj,          
    draggable: true,       
});

здесь "draggable:true" делает изображение перетаскиваемым

вот один из примеров изменения размера изображения: http://www.html5canvastutorials.com/labs/html5-canvas-drag-and-drop-resize-and-invert-images/

Я хочу сделать плагин, используя этот пример, чтобы пользователь мог просто сделать что-то вроде resize:true или image.resize(); и размер изображения/формы становится изменяемым.

Надеюсь, я смогу объяснить себя


person boyfromnorth    schedule 22.01.2013    source источник


Ответы (1)


хм, я думаю, что вы хотите сделать, это иметь параметры для вашего плагина .. это достигается с помощью

(function ($) {
    $.fn.plguinname = function (options) {
        var settings = $.extend({
          draggable: true ,
          other_optuion : 'value'
        }, options);
....

теперь, когда какой-то орган вызывает ваш плагин, он передает некоторые параметры, если хочет, в противном случае плагин будет использовать параметры по умолчанию (например, other_optuion будет 'value'), например так

$('.selector').plguinname({
draggable: true ,
other_optuion : 'some other value'
})

Я думаю, вам следует больше узнать о разработке плагинов jquery. Одно место, которое я бы порекомендовал, это YouTube;) для быстрого обучения

person Hussein Nazzal    schedule 22.01.2013
comment
Но дело в том, что он все еще выбирает элемент из DOM... например. selector.. Я хочу использовать элемент, сгенерированный kinetic.js. Как изображение, сгенерированное библиотекой. А затем манипулировать им.. Я не могу объяснить сам.. Попробую что-нибудь, а затем опубликую код. . - person boyfromnorth; 22.01.2013
comment
Ваш вопрос явно спрашивал о том, как создать плагин и сделать так, чтобы он имел ту же функциональность, что и библиотека htm5, которую вы описываете. Поэтому, пожалуйста, убедитесь, что в следующий раз четко понимаете, что вы хотите, относительно того, что вы хотите, вы можете выбрать элемент используя $(element).ready , а затем делайте все, что хотите, после этого - person Hussein Nazzal; 23.01.2013