Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

ContentEditable и JavaScript

Автор Bhudh, декабря 14, 2011, 16:35

0 Пользователи и 1 гость просматривают эту тему.

Bhudh

Кто-нибудь может популярно объяснить сакральное различие этих двух функций?
function chgSpan1(id) {
editable = document.getElementById(id)
currentState = editable.isContentEditable; // Узнаём текущее значение.
newState = !currentState;            // Переменная нового значения.
editable.contentEditable = newState; // Устанавливаем новое значение.
}

function chgSpan2(id) {
currentState = id.isContentEditable; // Узнаём текущее значение.
newState = !currentState;            // Переменная нового значения.
id.contentEditable = newState;        // Устанавливаем новое значение.
}
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Одна из них где-то не работает.

Глупость сказал.

Первая принимает на вход строку, вторая элэмэнт.

Bhudh

Кто-нибудь может популярно объяснить сакральное различие этих двух функций?
function chgSpan1(id) {
   editable = document.getElementById(id)
   currentState = editable.isContentEditable; // Узнаём текущее значение.
   newState = !currentState;            // Переменная нового значения.
   editable.contentEditable = newState; // Устанавливаем новое значение.
}

function chgSpan2(id) {
   currentState = id.isContentEditable; // Узнаём текущее значение.
   newState = !currentState;            // Переменная нового значения.
   id.contentEditable = newState;        // Устанавливаем новое значение.
}


Помимо того, что первая требует параметр обязательно в кавычках, а вторая обязательно без оных...
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv


Bhudh

А зачем так сделано? У них разные отклики на отсутствие присутствия принятого?
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Не думаю. Мне это кажется с точностью до изоморфизма одним и тем же.
chgSpan1(id) = chgSpan2(document.getElementById(id))

arseniiv

А я уж думал, ты удалил моё сообщение. :'( Чуть не обиделся.

Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Вот и я удивлялся. Выдумал, что ты модератора попросил!

arseniiv


Demetrius

Цитата: Bhudh от декабря 14, 2011, 18:03
Цитата: arseniiv от chgSpan1(id) = chgSpan2(document.getElementById(id))
Правая часть нерабочая.
А она и должна быть нерабочая, потому что тут = не в яваскриптовом смысле. :P

Арсений имел в виду, что chgSpan1(id) и chgSpan2(document.getElementById(id)) идентичны.

То есть выполняется равенство
chgSpan1(id) == chgSpan2(document.getElementById(id))
для любых id.

arseniiv


Demetrius

Про него все забывают. Авторы С специально такой символ для присваивания выбрали, чтобы все потом путались.

Bhudh

Цитата: Demetrius от А она и должна быть нерабочая, потому что тут = не в яваскриптовом смысле.
А я и не имел в виду в яваскриптовом смысле.
Я имел в виду, что кавыки забыли.
Рабочий вариант:
  • chgSpan2(document.getElementById('id'))
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

arseniiv

Offtop
Я привык, но забыл...

Цитата: Bhudh от декабря 14, 2011, 22:12
Рабочий вариант:
Я понимал как переменную. Переменная строковая бывает. И это именно я почти не спал ночь. :-\

Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо


Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Bhudh

Яндыкс выдал:
Цитата: Строковая переменная содержит текст в кодировке Unicode длиной до 231 (более 2 миллиардов!) символов.
;D
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо



Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо


Быстрый ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.

Имя:
Имейл:
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр