Zend framework 需要帮助使用dojo布局站点吗
基本上,我会喜欢用dojo来布局一个网站,在那里我会有一个页眉,内容区(这被分成两部分,左窗格中有一些手风琴,右窗格中有一些主要内容),然后是页脚 因为我需要的网站总是有这个布局,我决定把它在主布局。然而,当我查看站点时,我看到了默认的索引页面,但它不在窗格中,正如我所希望的那样,并且没有任何dijit小部件被呈现 不确定是否粘贴大代码在一篇文章是允许的,如果不是我很抱歉,但下面是主布局的代码。我没有对默认的zend工具结构做太多工作。我只创建了几个模块:Zend framework 需要帮助使用dojo布局站点吗,zend-framework,dojo,dijit.layout,Zend Framework,Dojo,Dijit.layout,基本上,我会喜欢用dojo来布局一个网站,在那里我会有一个页眉,内容区(这被分成两部分,左窗格中有一些手风琴,右窗格中有一些主要内容),然后是页脚 因为我需要的网站总是有这个布局,我决定把它在主布局。然而,当我查看站点时,我看到了默认的索引页面,但它不在窗格中,正如我所希望的那样,并且没有任何dijit小部件被呈现 不确定是否粘贴大代码在一篇文章是允许的,如果不是我很抱歉,但下面是主布局的代码。我没有对默认的zend工具结构做太多工作。我只创建了几个模块: <?php Ze
<?php
Zend_Dojo::enableView($this);
$this->dojo()->setCdnBase(Zend_Dojo::CDN_BASE_GOOGLE)
->addStyleSheetModule('dijit.themes.tundra')
->setDjConfigOption('parseOnload', TRUE)
->setDjConfigOption('locale', 'en-GB')
->setDjConfigOption('isDebug', TRUE);
echo $this->dojo();
?>
<script type="text/javascript">
dojo.require("dijit.layout.ContentPane");
dojo.require("dijit.layout.BorderContainer");
dojo.require("dijit.layout.TabContainer");
dojo.require("dijit.layout.AccordionContainer");
</script>
</head>
<body>
<div dojoType="dijit.layout.BorderContainer" gutters="true" id="borderContainer">
<div id="header" dojoType="dijit.layout.ContentPane" region="top" splitter="false">
<div id="logo">
<img src="/images/logo.gif" />
</div>
<div id="menu">
<a href="<?php echo $this->url(array(), 'home'); ?>">HOME</a>
<a href="<?php echo $this->url(array('page' => 'services'), 'static-content'); ?>">SERVICES</a>
<a href="#">CONTACT</a>
</div>
</div><!-- end header -->
<div dojoType="dijit.layout.BorderContainer" liveSplitters="false" design="sidebar"
region="center" id="content">
<div dojoType="dijit.layout.AccordionContainer" minSize="20" style="width: 300px;"
id="leftAccordion" region="leading" splitter="true">
<div dojoType="dijit.layout.AccordionPane" title="One fancy Pane">
</div>
<div dojoType="dijit.layout.AccordionPane" title="Another one">
</div>
<div dojoType="dijit.layout.AccordionPane" title="Even more fancy" selected="true">
</div>
<div dojoType="dijit.layout.AccordionPane" title="Last, but not least">
</div> <!-- end AccordionContainer -->
</div>
<div dojoType="dijit.layout.TabContainer" region="center" tabStrip="true">
<div dojoType="dijit.layout.ContentPane" title="My first tab" selected="true">
<?php echo $this->layout()->content ?>
</div>
<div dojoType="dijit.layout.ContentPane" title="My second tab">
Lorem ipsum and all around - second...
</div>
<div dojoType="dijit.layout.ContentPane" title="My last tab" closable="true">
Lorem ipsum and all around - last...
</div>
</div>
</div>
<div id="footer">
<p>Created with <a href="http://framework.zend.com/">Zend Framework</a>. Licensed under <a href="http://www.creativecommons.org/">Creative Commons</a>.</p>
</div><!-- end footer -->
</div>
require(“dijit.layout.ContentPane”);
require(“dijit.layout.BorderContainer”);
require(“dijit.layout.TabContainer”);
require(“dijit.layout.AccordionContainer”);
Lorem ipsum和全方位-秒。。。
Lorem ipsum和全方位-最后。。。
用…创建。根据许可证
您在设置dojo配置选项时有一个输入错误。而不是
->setDjConfigOption('parseOnload', TRUE)
这是必须的
->setDjConfigOption('parseOnLoad', TRUE)
注意大写字母“L”。如果您解决了这个问题,那么至少dojo解析器会完成它的工作
没有检查您的布局是否正常,请参阅Ken的评论。您在设置dojo配置选项时有输入错误。而不是
->setDjConfigOption('parseOnload', TRUE)
这是必须的
->setDjConfigOption('parseOnLoad', TRUE)
注意大写字母“L”。如果您解决了这个问题,那么至少dojo解析器会完成它的工作
没有检查布局是否正常,请参阅Ken的评论。只是一个说明,您可能不需要为了您的目的嵌套两个BorderContainer;一个带有上/左/下/中心区域的应该足够了。看看这里的“更高级的示例”:另外,您的body标签上缺少了
class=“tundra”
,无法实际应用主题。请注意,您可能不需要为自己的目的嵌套两个bordercontainer;一个带有上/左/下/中心区域的应该足够了。看看这里的“更高级的示例”:另外,您的body标签上缺少实际应用主题的class=“tundra”
。