브라우저가 만족 편집 가능한 매개 변수에서"일반 텍스트 전용"값을 지원하는지 감지하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com//questions/10672081

문제

"콘텐츠 편집 가능"매개 변수에 대한 관련 정보를 찾을 수 없습니다.나는 구글 플러스가 크롬 브라우저에 이것을 사용하고 있다는 것을 알아 냈습니다:

<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());
.

그러나 브라우저 별 페이지를 수행하는 것은 우리를 IE6 문제로 인도하는 것입니다.

다른 팁

기능을 감지하기 위해 예외 잡기에 의존하지 않으려는 경우 대안이 있습니다:

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' (지원되지 않음/거짓).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top