как удалить «еще один редактор на месте» из поля (плагин jQuery inplace.js) - PullRequest
0 голосов
/ 14 марта 2009

Я могу настроить редактор мест без проблем, все отлично работает, но я не нашел способа удалить его, когда он присоединен к полю, кто-нибудь знает как?

Я говорю об этом плагине здесь: http://www.davehauenstein.com/code/jquery-edit-in-place/

1 Ответ

2 голосов
/ 15 марта 2009

Полагаю, вы хотите отключить редактор на месте.

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

Если это не так, возможно, вы могли бы использовать старый добрый трюк с кешем div:

$.fn.disableWithADiv() {
    var element = $(this);
    var pos = element.offset();
    $("body").append($("<div />").css({
        "position": "absolute",
        "z-index": 1000,
        "left": pos.left+"px",
        "top": pos.top+"px",
        "width": element.width(),
        "height": element.height(),
        "display": "block"
    }).attr("id",element.attr("id")+"-div-disabler"));
}

$.fn.removeDivDisabler() {
    var element = $(this);
    $("#"+element.attr("id")+"-div-disabler").remove();
}

затем используйте

$("#yourElement").disableWithADiv();   // To disable
$("#yourElement").removeDivDisabler(); // To re-enable

Если все пойдет по плану, div будет отлавливать события щелчка вместо вашего элемента, и редактор мест никогда не откроется.

Это из головы, не уверен, что там нет опечатки или серьезного логического недостатка;)

EDIT:

Что ж, есть проблема ... тела двух функций должны быть заключены в эту конструкцию:

return this.each(function() {
    // Body here
});

Глупый я.

...