Ваша реклама могла б бути тут!
1 млн переглядів на місяць!
Google Page Rank: 5

Многострочный текст и тег <br />

🔴 16:51 Повітряна тривога в Харків.обл.
Статус: Offline
Реєстрація: 30.04.2007
Повідом.: 895
  • 🔴 16:51 Повітряна тривога в Харків.обл.
  • #1
Многострочный текст и тег <br />

При создании поста в
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
блоге многострочный текст в коде программ разбивается на строки тегом <br />, но если мне нужно текст кода скопировать (через свойство textContent соответствующего div'а), то получаю одну строку, т.е. тег <br /> просто удаляется. Как быть?
Можно, конечно, регэкспами определять, где там может быть перевод строки и вставлять, но это просто жуть. Можно ли как-то эти теги <br /> заменить или удалить?
И ещё вопрос, почему так получается? Это гугловский движок так форматирует, или может стилями какими можно настроить?
 
  • 🔴 16:51 Повітряна тривога в Харків.обл.
  • #3
При создании поста в
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
блоге многострочный текст в коде программ разбивается на строки тегом <br />, но если мне нужно текст кода скопировать (через свойство textContent соответствующего div'а), то получаю одну строку, т.е. тег <br /> просто удаляется. Как быть?
Можно, конечно, регэкспами определять, где там может быть перевод строки и вставлять, но это просто жуть. Можно ли как-то эти теги <br /> заменить или удалить?
И ещё вопрос, почему так получается? Это гугловский движок так форматирует, или может стилями какими можно настроить?

а еще, желательно указывать чем копировать собираетесь, ну джаваскриптом, там или чем другим?
 
  • 🔴 16:51 Повітряна тривога в Харків.обл.
  • #4
С копированием у меня уже всё в порядке. Нашёл
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
уже всё работает.
Осталось только с переносом строк разобраться.

а что если взять innerHTML?

innerHTML мне даст текст в HTML разметкой, а мне нужен только текст
И ещё. textContent не канает под IE, какое там нужно свойство указывать?
 
  • 🔴 16:51 Повітряна тривога в Харків.обл.
  • #5
а если HTML потом в ББ код ))
 
  • 🔴 16:51 Повітряна тривога в Харків.обл.
  • #6
innerHTML мне даст текст в HTML разметкой, а мне нужен только текст
И ещё. textContent не канает под IE, какое там нужно свойство указывать?

ну так очисти innerHTML от всех тегов, кроме <br />
вообще, походу, это движок форматирует.

альтеранатива - джаваскриптовые хайлайтеры.
в див засовывается просто кусок кода без разметки, а далее хайлайтер добавляет нужные стили.

например -
Тільки зареєстровані користувачі бачать весь контент у цьому розділі

он вроде как тут юзается -
Тільки зареєстровані користувачі бачать весь контент у цьому розділі


зыЖ копирование скриптами в клипбоард не самая хорошая идея
Тільки зареєстровані користувачі бачать весь контент у цьому розділі

Тільки зареєстровані користувачі бачать весь контент у цьому розділі
 
  • 🔴 16:51 Повітряна тривога в Харків.обл.
  • #7
Спасибо, почему я сразу не додумался про удаление тегов? Там же только спаны
Вот такой функцией делаю всё, что нужно из innerHTML
Код:
function getFreebrCodeString(innerHTMLtocopy){
	//удаляем теги <span></span>
	var htmlfree=innerHTMLtocopy.replace(/(<span[^>]*>)(.*?)(<\/span>)/ig, "$2");
	//заменяем <br> на \r\n
	var brfree=htmlfree.replace(/(.*?)(?:<br(?: \/)?>)(.*?)/ig, "$1\r\n$2");
	//удаляем номера строк
	return brfree.replace(/^\s*\d{1,}\s/img, "");
}
А javascript не подойдет для подсветки, потому как я этот код ещё в одном месте вставляю, а там уже никаких скриптов :(
А копирование в буфер там тоже сделано через флеш
 
Назад
Зверху Знизу