首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IE (internet explorer)中的zend headScript()->appendFile

IE (internet explorer)中的zend headScript()->appendFile
EN

Stack Overflow用户
提问于 2011-03-17 00:24:50
回答 3查看 747关注 0票数 0

两行脚本

代码语言:javascript
复制
  $this->headScript()->appendFile('/js/global.js', 'text/javascript');
  $this->headScript()->appendFile('http://zendbase/js/global.js', 'text/javascript');

Firefox以两种方式运行脚本(绝对方式,相对根方式)

Internet Explorer只运行append(绝对)的第二个方法,即http。这不是一个好方法。当我在浏览器中查看源代码时,可以看到添加了以下行

代码语言:javascript
复制
<script type="text/javascript" src="/js/global.js"></script>

但是浏览器没有读取。这真的超出了我的理解。这很奇怪。如何使第一行在所有浏览器(包括IE )上使用文档根路径。视图帮助器中是否有任何设置?还是别的什么?

我可以使用$_Server变量动态地使其成为绝对路径,但我不想使用绝对路径。

任何想法。提前感谢:)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-26 16:14:05

最后我解决了这个问题

我从layout.phtml中删除了baseUrl();?>“/>,并在application.ini resources.frontController.baseUrl = "”中添加了以下行

票数 0
EN

Stack Overflow用户

发布于 2011-03-17 06:47:42

脚本的相对路径肯定会在IE中工作-我已经用过很多次了……您使用的主机名是什么(例如www.example.com)?您的第二行代码应该不起作用,因为您没有有效的主机名- http://zendbase不会解析任何内容。zendbase是一个变量吗?

票数 0
EN

Stack Overflow用户

发布于 2011-03-17 08:31:00

对于相对静态资源(图像、JS、CSS、SWF等),您应该始终使用baseUrl助手,例如

代码语言:javascript
复制
$this->headScript()
     ->appendFile($this->baseUrl('/js/global.js'));

如果你可以在源代码中看到正确的<script>标签,那么问题要么是路径不正确(参见上面的baseUrl助手),要么是你的JavaScript包含错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5328368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档