은 다음과 바이올린을 참조 에이스 편집기 변경 이벤트 기간 동안 IE11에서 잘못된 속성. 이것은 URL을 정규화하는 데 사용되는 앵커 요소에 문자열을 전달합니다. Parse href 버튼을 클릭하여이 기능을 직접 실행할 수도 있습니다.앵커 태그 HREF는
var parseHref = function()
var anchorNodeHrefOriginal = urlParsingNode.href;
urlParsingNode.setAttribute("href", 'my-href')
var firstPassHref = urlParsingNode.href;
urlParsingNode.setAttribute("href", firstPassHref)
var finalHref = urlParsingNode.href;
$('#original-href').html(anchorNodeHrefOriginal);
$('#first-pass-href').html(firstPassHref);
$('#final-href').html(finalHref);
}
editor.getSession().on('change', parseHref)
이것은 (this 참조) URL을 해결하기 위해 AngularJS와에 의해 사용되는 기능을 복제합니다. 이것은 에세이 편집기에 앵커 에디터를 삽입하려고 할 때 적합합니다.
문제를 재현하려면 일부 텍스트를 복사하여 붙여 넣으십시오 (단지 입력하지 마십시오!). 크롬에서 하단에 표시된 텍스트의 값은 모두 http://fiddle.jshell.net/R3VbC/4/show/my-href과 같아야합니다. IE11에서 똑같은 일을한다면 값은 단순히 'my-href'입니다.
편집기로 타이핑하거나 구문 분석 href 버튼을 클릭하는 등의 다른 방법으로이 parseHref 함수를 실행하면 원하는 결과 (예 : http://fiddle.jshell.net/R3VbC/4/show/my-href)가 표시됩니다. 텍스트를 복사하여 편집기에 붙여 넣는 경우에만 잘못된 값을 제공하는 것 같습니다.
이
또한editor.getSession().on('change', function() {
window.setTimeout(parseHref);
})
그래서 어떻게 든 에이스 편집기 변경시 IE11에서 제대로 해결에서 앵커 태그를 방지하는 것 같습니다 (http://jsfiddle.net/R3VbC/5/ 참조) window.setTimeout에서 parseHref 기능을 실행하여 해결할 수 있습니다 행사. 왜 이런 일이 일어나고 예방할 수 있습니까?