Firefox 24에서 Devtools-tweaks은 Firefox 관리자에서 선택된 항목을 어두운 파란색으로 윤곽을 그립니 다. 그러나 파이어 폭스 25 베타 버전에서는 'iframe-ruleview'클래스 (인스펙터의 올바른 목록)를 사용하여 패널을 찾을 때 정의되지 않았지만 DOM 속성에서이 요소를 볼 수는 있지만 CSS 속성이있는 올바른 패널이라고 정의되어있다. . 내용/inspectorTweaks.js에서getElementsByClassName() Firefox에서 요소를 찾지 못했습니다. 25
관련 코드 : 그것은 frame
이 정의되지 말한다
// window.inspector is documented in inspector-panel.js
// .doc and window is inspector.xul window.
window.addEventListener('load',function() {
var frame = document.getElementsByClassName('iframe-ruleview')[0];
if (!frame.contentWindow.location.href.contains('cssruleview.xul')) {
//Not the xul, it's a html we have to extend from here (Firefox 22+)
frame.setAttribute('context',"dtCSSContext");
}
function styleit() {
var frame = document.getElementById('markup-box').children[0];
var doc = frame.contentDocument;
var style= doc.createElement('style');
style.appendChild(doc.createTextNode(
'.theme-selected { border:1px solid blue; padding:1px; margin-left:-2px; border-radius:3px;}'+
'.theme-twisty:not([open]) {top:5px; left:5px;}'
));
doc.body.appendChild(style);//what's the equivalent for old xul file?
}
styleit();
window.inspector.on("markuploaded", styleit);
frame.addEventListener('load',styleit);
//frame.contentWindow.addEventListener('load',styleit);
});
, 작동이 코드의 나머지 부분을 계속 예외.
아래 예제에서 변경하려고했지만 기본 프레임에서 devtools를 열 예정입니까?
window.addEventListener('load',function() {
let {ConsoleUtils, gDevTools} = Components.utils.import("resource:///modules/devtools/gDevTools.jsm", {});
let {devtools} = Components.utils.import("resource://gre/modules/devtools/Loader.jsm", {});
let TargetFactory = devtools.TargetFactory;
console.log('tf:')
console.log(TargetFactory)
console.log(devtools)
let target = TargetFactory.forTab(gBrowser.selectedTab);
^이 코드는 gBrowser가 정의되지 않은 오류를 발생시킵니다.
'var frame = document.querySelector ('. iframe-ruleview ');' – Sergio
관련 HTML을 알려주십시오. 현재 프레임에'iframe-ruleview' 클래스를 가진 객체가 있다면 뭔가 다른 일이 일어나게 될 것이고 우리는 그 밖의 잘못된 것을 돕기 위해 HTML을보아야 할 것입니다. – jfriend00