Имеется div с атрибутом contenteditable="true" и id="message"другими словами текст внутри этого блока можно редактировать из окна браузера - заменяет <input type="text">необходимо создать кнопку по нажатию на которую часть текста которую я выделил становилась жирнойЗначит делаем кнопку:<input type="submit" onclick="bbcode('<b>','</b>'); return false" value="b">и пишем js функцию:function bbcode(one,two) {document.getElementById('message').innerHTML = one+window.getSelection()+two;}Получается что заменяется весь текст внутри дива на выделенный в любом месте кусок с подставленными <b> и </b>как сделать чтобы:1. window.getSelection() выделял только в блоки с id="message"?2. чтобы заменяло не весь текст, а только ту часть которую выделил?
бамп
Как как, элементарно, блять! Пошёл отсюда!
1. Проверять в фокусе ли нужный div, если нет - выход из функции не вызывая getSelection2. window.getSelection() возвращает НЕ строку, а мощный объект со множеством методов, пройди по ссылкеhttps://developer.mozilla.org/en-US/docs/Web/API/Selectionучебный год начался, ура
бля есть же replaceДелаю так:document.getElementById('message').innerHTML = document.getElementById('message').innerHTML.replace(window.getSelection(), one+window.getSelection()+two);Получается выделенные символы заменяются на такиеже но с <b> по бокам, однако проблема в том, что текст может быть таким: "что то - хуйня, что это хуйня" - я выделю вторую хуйню, а жирной станет первая, как сделать так, чтобы стала именно та, которую я выделил?
>>136345400в английский не могуя не учусь уже давно
>в английский не могуплохо, для программирования этот скилл маст-хэвна пикриле свойство объекта, возвращаемого getSelection. это свойство указывает на номер символа в строке, с которого пошло выделение
>>136344480 (OP) var start = pidor[0].selectionStart; var end = pidor[0].selectionEnd;
>>136346642>>136346126Сложна, я ток начал разбираться с JS, но спс ща буду пытаться это все задействовать
>>136346642нет. это только для инпутов и текст-арий. в задаче сказано: contenteditable div
>>136345400>Проверять в фокусе ли нужный divон не в фокусе, потомучто в фокусе кнопка
пикрелейтед что за ошибка? Вот написал "хуй" - выделил букву "у" - нажал "b" - буква стала жирной, но в консоле ошибка какаят
>>136347248>>136345400согласен, хуйню сказал не подумаврешение фокуса примерно вот такое. разумеется с проверками на существование свойств и все дила
>>136347729покажи строку 53 файла script.js. ошибка там
>>136348014такого файла нет. есть mes.js и на 53 строке закрывается функция которая к сабжу отношения не имеетона вызывается каждую секунду и проверяет кто онлайн, соответственно должна ошибка появляется сама через секунду независимо от того, что я жму по кнопке>>136347779блиа, печет, что не понимаю что на пикрелейт
>>136348192> блиа, печет, что не понимаю что на пикрелейтсамое важное там внизуwindow.getSelection().focusNode.parentElement === document.getElementById('test1234')
>>136348014этопоходу как-то связано с расширением selectlikeaboss
>>136348360да, отключил расширение ошибка исчезла>>136348359так с фокусом ща поебусь, но как сделать так чтобы заменялось то, что я выделил, я чет не понял
>>136344480 (OP)блее, вот объясните мне тупому, кому нахуй нужно вот это вот ваше мозгоебание, ну осилил я все эти хытымылы цыцысы , вдогонку джавы навернул и сишарпой завершил И ЧЕ, я понял что могу, но зачем нихуя не понял. Оно не надо никому, если только наебать вас за копейки
>>136344480 (OP)>Значит делаем кнопку:><input type="submit"Во-первых, тебе нужен <button type="button" ... />Во-вторых ты хуй и говно.В-третьих дальше не читал./тред
>>136348776А питон забыл ебать, нахуй это все, все уже давно придумано и написано, приложений жопой жри, не хочу, игор дохуищи, ебал я это прогромировоне
>>136344480 (OP)>Кнопка>input type=submitЗачем? Кнопки можно ведь и иначе пилить и не нужно мучаться с return false и отменой дефолтного действия.https://gist.github.com/anonymous/8caf7a10fda8dabc52a3143923778829Посмотри тут. Набросал тебе. Не писал на js два года, так что просто ориентируйся на.
>>136349093и домов дохуя построено, но ты ведь всеравно работаешь на стройке разнорабочим
>>136348663бамп
>>136349136Лол, хуйню написал, select на дивах не работает.
А я тоже учу ваш ссаный js. Только мне 24, имею диплом бакалавра по айтишной специальности не самого паршивого вуза, но на всех собеседованиях меня слали нахуй. В итоге работаю эникеем за 25к. Есть тут такие же черви-пидоры, как и я?
>>136350187Если ты еще тут, то я решил почти все задачи за исключением этой:>проблема в том, что текст может быть таким: "что то - хуйня, что это хуйня" - я выделю вторую хуйню, а жирной станет первая, как сделать так, чтобы стала именно та, которую я выделил?
>>136350452Я ещё тут, пишу код. Если тебе нужен честный ответ - window.getSelection() такой хуйнёй не занимается, посмотри в сторону jQuery, тебе наверняка с ней придётся познакомиться рано или поздно. Она используется почти всюду именно из-за того, что такой пердолинг невероятный.
>>136350617да я в курсе, но надо хуйню задуманную доделать и перейти к нормальному изучению JS / jQuery и всей этой перды
>>136350431>но на всех собеседованиях меня слали нахуйНа каких вопросах заваливался? мимо фронтенд джун
>>136350744https://jsfiddle.net/u2w7wqm5/
Дальше сам, ок?
>>136350875спасип, ща буду ковыряться
>>136350875ты сделал чтобы просто отображался текст который я выделил?
>>136352969Да. Я не очень понял, чего ты хотел, сразу.Сейчас работаю над этим.
>>136353064говорю же это реализовано.Мне пишут вот что:>нужно заменять именно selection>http://devdocs.io/dom/range/surroundcontents>как-нибудь так.>Range из Selection получить тривиальноя хуй че понял, потом кинули вот это и оно работает:https://jsfiddle.net/hok2sp5v/
>>136353431Ну и прекрасно.
>>136353521не обижайся(