101 / 100 / 51
Регистрация: 19.04.2011
Сообщений: 961
|
||||||
1 | ||||||
Проверить наличие текста до и после элемента14.01.2017, 11:08. Показов 3939. Ответов 13
Метки нет (Все метки)
Здравствуйте.
Не могу победить возникшую задачу. Мне необходимо перед и после блока с классом inline-attachment поставить тег <br />, но только в том случае, если перед блоком есть текст, если передо блоком нету текста, то не надо добавлять перенос строки. Так же и после блока, надо проверить наличие текста, если есть - добавить перенос. После блока может быть такой же блок, его переносить не надо... Как поставить перенос я знаю:
Спасибо.
0
|
14.01.2017, 11:08 | |
Ответы с готовыми решениями:
13
Проверить наличие класса у элемента Проверить тэг на наличие контента в виде текста Как проверить наличие у элемента класса CSS БЕЗ Jquery Как проверить наличие элемента и если он есть удалить его по клику |
2382 / 1386 / 655
Регистрация: 23.08.2015
Сообщений: 3,463
|
||||||
15.01.2017, 01:03 | 2 | |||||
Raisin Zn,
https://jsfiddle.net/a2xL7be8/
1
|
101 / 100 / 51
Регистрация: 19.04.2011
Сообщений: 961
|
|
15.01.2017, 04:14 [ТС] | 3 |
sad67man, большое спасибо, Ваш код работает!
Теперь тег переноса на новую строку добавляется, если перед или после блока следует текст, но если текст идет форматированным, выделен каким ни будь тегом, то перенос не добавляется. Я подумал, что тут лучше проверять не наличие текста, а наличие такого же блока рядом с этим блоком, то есть .inline-attachment перед или после .inline-attachment. Как такое сделать? Еще, если после блока ни чего нет, то в в консоли ошибка: Uncaught TypeError: Cannot read property 'textContent' of null и остальные JS не работают...
0
|
2382 / 1386 / 655
Регистрация: 23.08.2015
Сообщений: 3,463
|
|
15.01.2017, 04:23 | 4 |
Raisin Zn, Вообще это делать лучше на стороне сервера при формирования вывода блоков.
0
|
101 / 100 / 51
Регистрация: 19.04.2011
Сообщений: 961
|
|
15.01.2017, 04:25 [ТС] | 5 |
https://jsfiddle.net/a2xL7be8/ - тут без ошибок отрабатывает, а у меня на странице, с ошибкой, если после блока ни чего нет...
Добавлено через 1 минуту Дело в том, что в код ядра залесть нельзя, пока нет официального расширения для решения моей задачи, я хочу использовать вот такой "костыль"...
0
|
2382 / 1386 / 655
Регистрация: 23.08.2015
Сообщений: 3,463
|
||||||
15.01.2017, 04:27 | 6 | |||||
Raisin Zn, чтоб избежать ошибки расширьте условие.
Raisin Zn, на счет форматирования сейчас подумаю)
1
|
101 / 100 / 51
Регистрация: 19.04.2011
Сообщений: 961
|
|
15.01.2017, 04:30 [ТС] | 7 |
sad67man, спасибо!
Ошибка пропала!
0
|
2382 / 1386 / 655
Регистрация: 23.08.2015
Сообщений: 3,463
|
||||||
15.01.2017, 05:01 | 8 | |||||
Raisin Zn, https://jsfiddle.net/a2xL7be8/1/
0
|
2382 / 1386 / 655
Регистрация: 23.08.2015
Сообщений: 3,463
|
||||||
15.01.2017, 05:03 | 9 | |||||
Сообщение было отмечено Raisin Zn как решение
Решение
Raisin Zn, https://jsfiddle.net/a2xL7be8/1/
1
|
101 / 100 / 51
Регистрация: 19.04.2011
Сообщений: 961
|
|
15.01.2017, 05:16 [ТС] | 10 |
sad67man, круто! Вы волшебник!
Большое Вам спасибо! Вы меня спасли!
0
|
2382 / 1386 / 655
Регистрация: 23.08.2015
Сообщений: 3,463
|
|
15.01.2017, 05:42 | 11 |
Raisin Zn, Принципиальный момент) Немножечко по семантике ошибся) судя по названию переменный isNextHasClass и isPrevHasClass должны возвращать true в случае, если класс имеется. Однако тут идет от обратного. Стоит их переименовать на isNextHasNoClass ну или что-то подобное)
1
|
101 / 100 / 51
Регистрация: 19.04.2011
Сообщений: 961
|
|
15.01.2017, 05:49 [ТС] | 12 |
sad67man, это уже мелочи!
Но слово is из переменных уберу, сделать на совесть! Добавлено через 2 минуты Ну или так сделаю.
0
|
2382 / 1386 / 655
Регистрация: 23.08.2015
Сообщений: 3,463
|
|
15.01.2017, 05:52 | 13 |
Raisin Zn, Кстати это общепринятое правило именования переменных типа boolean во всех языках программирования. Имя переменной должна указывать на то, что там лежит в том числе и тип. Здесь добавляя слово is мы как бы задаем вопрос "имеется класс?", а значение переменной возвращает ответ. Если переменная начитается на is, значит тип переменной boolean и возвращает true/false.
1
|
101 / 100 / 51
Регистрация: 19.04.2011
Сообщений: 961
|
|
15.01.2017, 05:58 [ТС] | 14 |
Не знал, теперь буду знать...
Вот что получилось и как было раньше (сейчас все на своих местах, раньше картинки могли стоять в одной линии с текстом):
0
|
15.01.2017, 05:58 | |
15.01.2017, 05:58 | |
Помогаю со студенческими работами здесь
14
Как проверить на существование элемента, после элемента input Проверить наличие текста в richTextBox Проверить наличие текста в TextBox Как проверить в Ls наличие текста в строке? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |