好的,所以,我并不熟悉PHP dev,但是,我发现自己。我有一个我在HTML / CSS和JS中创建的页面,它与几个JS插件配合得很好。然而,当我把它变成一个php页面时,JS是冲突的,并且变得毫无用处。
这是因为PHP将它聚合成一个大的js文件。当我在调试中运行它并单独加载所有文件时,一切都很好。有没有人打过这个?
以下是我加载它们的方法:
register_script( array(
'base_path' => PROJECTURL,
'scripts' => array(
'js/libs/jquery-1.5.min.js',
'js/libs/jquery.jscrollpane.js',
'js/libs/jquery.selectbox-0.6.1.js',
'js/libs/jquery.mousewheel.js',
'js/libs/jquery.autocomplete.min.js',
'js/libs/jquery.watermark.js',
'js/propriatary-name.js',
)
) );
答案 0 :(得分:2)
我认为你的register_script函数没有达到预期的效果。这不是标准的PHP函数,因此除非您使用框架,否则需要更改一些内容。
您的PHP在服务器端执行,而您的.js文件包含在客户端的DOM中。如果您以编程方式执行此操作,只需将脚本添加到数组中,然后使用foreach循环将脚本添加到HTML输出中:
$pagescripts = array(
'js/libs/jquery-1.5.min.js',
'js/libs/jquery.jscrollpane.js',
'js/libs/jquery.selectbox-0.6.1.js',
'js/libs/jquery.mousewheel.js',
'js/libs/jquery.autocomplete.min.js',
'js/libs/jquery.watermark.js',
'js/propriatary-name.js');
foreach($pagescripts[$page] as $v){
$output .= "<script type=\"text/javascript\" src=\"" . $v . "\"></script>\n";
}