나는 작은 프로젝트를 수행하고 있으며 Dojo를 사용하고 있습니다. 지금은 모든 것을 제대로로드 할 수 없습니다. 툰드라 테마를 사용하려고합니다.Dijit TabContainer 탭 누락, serif 글꼴, 모든 컨테이너 표시
기본적으로 TabContainer에 탭이없고, sans-serif 대신 serif 글꼴이 있고 비활성 탭에있는 내용 패널을 숨기지 않고 모든 ContentPane을 표시합니다. 세리프 문제는 내가 작성하려고하는 다른 모든 Dijit 요소에도 적용되지만 Dijit 양식 요소는 글꼴이 올바르지 않은 경우와 올바른 스타일링이 필요하고 유효성 검사 및 기타 고급 기능이 잘 작동하는 것 외에는 조금 더 잘 작동하는 것 같습니다.
다른 Dijit 테마를 사용할 때도 동일한 문제가 발생하지만 TabContainer 테두리 색이 각기 다른 테마와 함께 변경되어 Dijit 테마가 올바르게로드 될 수 있다고 생각하게됩니다. Dojo는 Dijit 요소를 올바르게 작성하는 것으로 보이며, 아래의 Firebug 출력을 살펴보십시오.
Dojo 1.3.2 dojo, dijit 및 dojox 디렉토리의 전체 사본이 js/dojo에 존재합니다. 링크 된 모든 스타일 시트와 스크립트는 처음에로드되며 경로가 정확합니다 (js의 경고 상자와 css의 본문 색상이 변경됨을 확인하기 위해 테스트했습니다).
index.html을
<!DOCTYPE HTML>
<html>
<head>
<link href="js/dojo/dijit/themes/tundra/tundra.css" rel="stylesheet">
<script src="js/dojo/dojo/dojo.js"></script>
<script src="js/script.js"></script>
</head>
<body class="tundra">
<div id="xmldiv">
</div>
<script language="javascript">xmlEnableDiv('xmldiv');</script>
</body>
</html>
JS/script.js 방화범, 내가 (내 눈에 정상적으로처럼 보이는) 다음을 참조 확인
function xmlEnableDiv(div) {
dojo.require("dijit.layout.TabContainer");
dojo.require("dijit.layout.ContentPane");
var tc = new dijit.layout.TabContainer({
}, div);
var cp1 = new dijit.layout.ContentPane({
id: "xmleditor",
title: "Editor",
content: "This is where the editor will actually go"
});
tc.addChild(cp1);
var cp2 = new dijit.layout.ContentPane({
id: "xmltext",
title: "Source",
content: "This is where the source will actually go"
});
tc.addChild(cp2);
}
:
<body class="tundra">
<div id="xmldiv" class="dijitTabContainer dijitContainer dijitTabContainerTop dijitLayoutContainer" widgetid="xmldiv">
<div id="xmldiv_tablist" class="dijitTabContainerTop-tabs" dojoattachevent="onkeypress:onkeypress" wairole="tablist" role="tablist" widgetid="xmldiv_tablist"/>
<div class="dijitTabSpacer dijitTabContainerTop-spacer" dojoattachpoint="tablistSpacer"/>
<div class="dijitTabPaneWrapper dijitTabContainerTop-container" dojoattachpoint="containerNode" role="tabpanel">
<div id="xmleditor" class="dijitContentPane" title="" widgetid="xmleditor" role="group">This is where the editor will actually go</div>
<div id="xmltext" class="dijitContentPane" title="" widgetid="xmltext" role="group">This is where the source will actually go</div>
</div>
</div>
<script language="javascript">
xmlEnableDiv('xmldiv');
</script>
</body>
실제 출력 (Firefox 및 Chrome)은 테마 테두리가있는 상자 (TabContainer)입니다. TabContainer에는 탭이없고 두 ContentPane이 동시에 표시됩니다 (둘 다 serif 글꼴 포함).
의 I는 소용없이 시도한 것들 : 다른 Dijits을 시도 내 init 함수
- 가. 그들은 부분적으로로드하는 것처럼 보입니다. 모든 Dijit에는 sans-serif 대신 serif 글꼴이 있지만 양식 요소와 대화 상자는 모두 틀린 글꼴에서 올바르게 표시됩니다.
미리 감사드립니다.
업데이트로 모든 것이 완벽하게 선언적으로 작동하지만 프로그래밍 방식으로 작동하지 않습니다. 누구든지 내 JavaScript에 문제가있는 것을 볼 수 있습니까? – beefsack