브라우저가 만족 편집 가능한 매개 변수에서"일반 텍스트 전용"값을 지원하는지 감지하는 방법은 무엇입니까?
-
12-12-2019 - |
문제
"콘텐츠 편집 가능"매개 변수에 대한 관련 정보를 찾을 수 없습니다.나는 구글 플러스가 크롬 브라우저에 이것을 사용하고 있다는 것을 알아 냈습니다:
<div contenteditable="plaintext-only"></div>
그것은 다른 브라우저가이를 지원하지 않는 것 같다 그것은 단지 크롬 독점 값입니다.나는 그것을 내 프로젝트에서 사용하고 싶다.그러나 브라우저를 감지하고"일반 텍스트 전용"설정을 지원하는지 확인해야합니다.
물론 크롬 만 감지 할 수 있지만이를 지원하는 다른 브라우저(이 순간에는 모르겠습니다)가 있거나 다른 메인 스트림 브라우저가 앞으로이 기능을 지원하기 시작할 수 있습니다.
그래서 크롬 브라우저 만 감지하는 것보다"일반 텍스트 전용"기능이 지원되는지 오히려 감지 할 것입니다.
누구든지 이것에 나를 도울 수 있습니까?
해결책
WebKit-only 기능으로 보입니다. 사양 만 "true", 속성 에 대한 가능한 값으로 "거짓"및 "상속"
a 버그 는 일반 텍스트에 대한 지원을 추가하도록 제기되었습니다.편집 사양에 "일반 텍스트 전용"대신 "일반 텍스트"에 대한 요청이 재미 있습니다.
편집 :
이 코드는 지원을 탐지하는 데 사용할 수 있습니다. :
.
function supportsPlainText()
{
var d = document.createElement("div");
try {
d.contentEditable="PLAINtext-onLY";
} catch(e) {
return false;
}
return d.contentEditable=="plaintext-only";
}
alert(supportsPlainText());
다른 팁
기능을 감지하기 위해 예외 잡기에 의존하지 않으려는 경우 대안이 있습니다:
function supportsPlaintextEditables () {
var div = document.createElement('div');
div.setAttribute('contenteditable', 'PLAINTEXT-ONLY');
return div.contentEditable === 'plaintext-only';
}
console.log(supportsPlaintextEditables);
//-> true/false
이 값은 속성 대신 특성으로 설정하면 다음과 같은 경우 구문 오류 예외가 발생하지 않기 때문에 작동합니다 'plaintext-only'
잘못된 값입니다.대신 속성 값을 기본값으로 설정합니다, 'inherit'
.
특성을 설정한 후 속성을 가져오면 대/소문자가 낮은 문자열이 생성되므로 특성 값을 다음으로 설정합니다 'PLAINTEXT-ONLY'
값이 있는 속성을 얻게 됩니다 'plaintext-only'
(지원/참)또는 'inherit'
(지원되지 않음/거짓).