Пожалуйста or Регистрация для создания сообщений и тем.

Деактивация неиспользованных выборов. Одноразовые кнопки без переходов.

Создаю текстовую игру. Есть параграф, в  конце текста дается 3 кнопки (каждая кнопка добавляет параграф через (+)), как "выбрать" эти кнопки, какие методы использовать, что бы их либо скрыть либо просто деактивировать.

После активации кнопки с (+) данная кнопка деактивируется. Меняет цвет текста кнопки, становится неактивной, как это реализована так и не разобрался.

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

И зеркальный вопрос. Создаю кнопку без переходов с какой то функцией. Как её сделать одноразовой, нажал - она выполнила код - и теперь не активна. Текст посерел, скрипт больше не отрабатывает. Опять же, вижу только созданием переменной аля once, но даже в этом случае не понимаю, как поменять цвет текста кнопки давая интуитивно понять что она деактивирована.

 

Всем спасибо за ответы.

Пробовал разными методами вызывать функцию $(), я так понимаю это что то из jQuery, но с результатами ничего не получается сделать.

Есть опасение, что нужно добраться до какогото объекта или метода дочернего от asmGlobal.

так же посмотрел на поведение обычных кнопок перехода на параграф созданных с помощью переменной.

если кнопки выведены 2 и более, то при нажатии «деактивируется» только первая, вторую же можно активировать уже скок угодно раз.

вот как реализовано отключение кнопки после нажатия и интересует. 

Я все выяснил, надеюсь это кому то поможет. В общем, когда вы нажимаете на кнопку, то в массив DisablesIds (дочерний от asmGlobal), добавляется айдишник данной кнопки. Я не смог пропихнуть туда свой ID, но выяснил, что так же меняется класс кнопки с button на buttonno (что превращает её в неактивную кнопку) после функции "update()".

Я собрал функцию которая меняет все кнопки в параграфе на данный момент и вырубает их.

allBtnOff = function(){{asmGlobal.Output.string = asmGlobal.Output.string.replace(/button /g,"buttonno "); update();}} //вырубает все кнопки что были До перехода

asmGlobal.Output.string - в нем хранится в формате строки весь html который должен быть выведен. Обратиться к ним по getElementID не получается это строка а не DOM элементы, я смог только его зареплейсить. Так можно реализовать еще что то. После слова "button " обязательно пробел иначе возникают баги при многократном использовании функции на странице. button => buttonno => buttonono (а такого класса нет и кнопки руинятся при этом текст начинает выполнять скрипты при нажатии на него)

Для выключения кнопки однократно, я создаю кнопку с переходом функцией button() с типом "+" и функцией, но ссылка на параграф там была на специальный параграф в котором ничего нет.

 

DoubleDragon отреагировал на эту запись.
DoubleDragon