解决mod_sobi2menu在Opera中不能显示Tree Style的问题
时间:2009-03-04 来源:weizhuyu
当安装好mod_sobi2menu模块后发现Tree Style在Windows的Opera不能正常的显示,用IE打开则完全正常,在Linux下安装测试也没问题。后来勾选Opera中的“出错时打开控制台”选项查看发现:
”JavaScript - http://localhost/joomla%5Cmodules%5Cmod_sobi2menu/mod_sobi2dtree.js
链接的脚本未载入“
原来是PHP中的DIRECTORY_SEPARATOR生成“http://localhost/joomla\modules\mod_sobi2menu/mod_sobi2dtree.js”路径在Opera中无法加载,Windows下"\"和"/"都可以解析成路径分隔符,所以IE没问题。 既然问题找到了就在mod_sobi2menu.php文件中加一句转换语句就好了: (defined( '_VALID_MOS' ) || defined( '_JEXEC' ) ) || ( trigger_error( 'Restricted access', E_USER_ERROR ) && exit() ); defined( "DS" ) || define( "DS",DIRECTORY_SEPARATOR); $add = defined( 'JPATH_SITE' ) ? DS.'mod_sobi2menu' : null;
$modulepath = DS.'modules'.$add;
$modulepath = strtr($modulepath,'\\','/');
链接的脚本未载入“
原来是PHP中的DIRECTORY_SEPARATOR生成“http://localhost/joomla\modules\mod_sobi2menu/mod_sobi2dtree.js”路径在Opera中无法加载,Windows下"\"和"/"都可以解析成路径分隔符,所以IE没问题。 既然问题找到了就在mod_sobi2menu.php文件中加一句转换语句就好了: (defined( '_VALID_MOS' ) || defined( '_JEXEC' ) ) || ( trigger_error( 'Restricted access', E_USER_ERROR ) && exit() ); defined( "DS" ) || define( "DS",DIRECTORY_SEPARATOR); $add = defined( 'JPATH_SITE' ) ? DS.'mod_sobi2menu' : null;
$modulepath = DS.'modules'.$add;
$modulepath = strtr($modulepath,'\\','/');
相关阅读 更多 +