2013-03-01 114 views
1

当我尝试将文件插入到内容中时,我在TinyMCE对话框中遇到了javascript错误。这里是我得到的:Uncaught typeError:无法读取未定义的属性'length'####。com/editor/jscripts/tiny_mce/plugins/Archiv/php/fileLoader.php?file = javascript 165TinyMCE上的Javascript错误

最初我假定路径被打破了,所以我去了我的链接,并意识到一切都很好。我认为这可能是一个浏览器兼容性问题,但在Safari,Firefox上进行测试,甚至可悲的是,IExplorer证明情况并非如此。然后我认为故障可能与我的TinyMCE版本有关,并用新文件修补它,但没有成功。我有智慧结局!请帮助,任何人。

这是fileLoader.php:

<?php 

switch($_GET['file']){ 
    # Javascript files 
    case 'javascript': 
     header('Content-type: text/javascript'); 
     readfile('..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'tiny_mce_popup.js')."\r\n\r\n"; 
     readfile('..' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'flash_detect_min.js')."\r\n\r\n"; 
     readfile('..' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'jquery' . DIRECTORY_SEPARATOR . 'jquery-1.3.2.min.js')."\r\n\r\n";  
     readfile('..' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'jquery' . DIRECTORY_SEPARATOR . 'jquery-ui-1.7.2.custom.min.js')."\r\n\r\n"; 
     readfile('..' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'SWFupload' . DIRECTORY_SEPARATOR . 'swfupload.min.js')."\r\n\r\n";  
     readfile('..' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'json2.min.js')."\r\n\r\n"; 
     readfile('..' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'SWFupload' . DIRECTORY_SEPARATOR . 'handlers.min.js')."\r\n\r\n";  
     readfile('..' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'archiv.min.js');   
     break; 

    # default 404 
    default: 
     header("HTTP/1.0 404 Not Found"); 
     break; 
} 

?> 
+0

这与php无关,它可能与您如何实现javascript代码有关。错误是指获取数组或字符串的长度,但在这种情况下,该变量无效。 – datasage 2013-03-01 19:25:31

回答

1

这听起来像如预期的PHP运行正常。您提到的错误是Javascript错误,因为PHP不使用.length,您将看不到来自PHP的错误get length of undefined

尝试手动包含所有的JS文件并查看错误的位置。这可能是其中一个图书馆正在期待一个元素在网页上,而不是。如果他们被缩小,我会建议使用Source Maps