извлечь html из clipboarddate в IE
Перед вами друзья мои обработчик события past
Ножно забрать вставленные данные в формате html
if(window.clipboardData){ //lдля IE
xDOM.innerHTML=window.clipboardData.getData('Text');
}else{ //для нормальных браузеров
xDOM.innerHTML=AEvent.clipboardData.getData('text/html');
}
event.preventDefault();//отменим срабатывание по умолчанию
Если это ie то сработает window.clipboardData Во всех браузерах clipboardData.getData('text/html'); вернет html а в ie текст. При этом text/html IE не поддерживает |
<input type="text" id="youtext">
<script>
youtext.onpaste = function (e) {
var buf = window.clipboardData ?
window.clipboardData.getData('text') :
(e.originalEvent || e).clipboardData.getData('text/plain');
alert(buf);
};
</script>
так вернет и Html |
Спасибо, но не все так просто.
Скопируй кусок страницы (допустим из яндекса) и вставь в input, и попробуй найти хотябы один тег. Мне не нужен текст, мне нужен скопированный кусок страницы вместе со всей разметкой, почему и использую /html а не /plain. |
Вот здесь можно посмотреть как пример отрабатывает при вставке куска страницы в хроме
Нужно в ишаке тоже получить текст с разметкой, то бишь HTML.
<div contenteditable id="youtext" style="height:200px;"> </div>
<script>
youtext.focus();
youtext.onpaste = function (e) {
var buf = window.clipboardData ?
window.clipboardData.getData('text') :
(e.originalEvent || e).clipboardData.getData('text/html');
alert(buf);
};
</script>
|
Stack overflow ? http://stackoverflow.com/a/6804718
|
| Часовой пояс GMT +3, время: 06:54. |