nsISelectionController를 사용하여 강조 표시/선택이 수행 된 것을 볼 수 있습니까?하이라이트를 관찰 하시겠습니까?
다른 선택 범위가 있음을 알고 있습니다. MXR - nsISelectionController Constants에 표시된 기본 범위에서 사용자가 선택을하는 것을보고 싶습니다.
변경 사항은 문서의 텍스트 노드에서와 비슷하지만 종류는 다릅니다.
감사
nsISelectionController를 사용하여 강조 표시/선택이 수행 된 것을 볼 수 있습니까?하이라이트를 관찰 하시겠습니까?
다른 선택 범위가 있음을 알고 있습니다. MXR - nsISelectionController Constants에 표시된 기본 범위에서 사용자가 선택을하는 것을보고 싶습니다.
변경 사항은 문서의 텍스트 노드에서와 비슷하지만 종류는 다릅니다.
감사
나는 해결책을 찾았지만 @Neil가 viewSource.js보고 HERE 소위 항목에서 권장 한대로이 nsIController를 사용하지 않습니다.
가능한 경우 nsIController 솔루션에 관심이있는 임씨. 저를 혼란스럽게하는 것을 이해하려고합니다. 그렇지 않으면 브라우저 스레드를 느리게하기 때문에
var mylis = {
timeout: 0,
notifySelectionChanged: function(doc, sel, reason)
{
if (!this.timeout) {
this.timeout = setTimeout(function() {
console.log('notifySelectionChanged','doc=',doc,'sel=',sel,'reason=',reason);
mylis.timeout = 0;
}, 1000);
}
}
}
gBrowser.contentWindow.getSelection().QueryInterface(Ci.nsISelectionPrivate).addSelectionListener(mylis);
//gBrowser.contentWindow.getSelection().QueryInterface(Ci.nsISelectionPrivate).removeSelectionListener(mylis);
제한 시간이 중요하다
그래서 이것은 선택하면 관찰자는 방법이다. 당신은 당신이 그것의 모든 gimicky를 강조 할 때 볼 수 있습니다. viewSource.js는 100ms를 사용 했으므로 다시 언급하겠습니다.