我是Joomla的新手,我尝试构建我的Joomla组件,但是,当我尝试将Jquery ptTimeSelect库包含在前端时,它会显示javascript错误
未捕获的类型错误:无法读取未定义的属性"_doCheckMouseClick"
我做了很多谷歌,并且确实更改了代码的位置,似乎 Joomla 自动忽略部分代码会导致此问题(也许它跳过了任何带有"_"下划线的代码),并且我确实尝试将_doCheckMouseClick重命名为 doCheckMouseClick,它显示相同类型的错误消息。
这是代码弹出错误
调用功能:文件中的第 228 行
$(document).mousedown(jQuery.ptTimeSelect._doCheckMouseClick);
定义功能:文件中的第 387 行
/**
* Closes the timePicker popup if user is not longer focused on the
* input field or the timepicker
*
* @private
* @param {jQueryEvent} ev - Event passed in by jQuery
* @return {undefined}
*/
jQuery.ptTimeSelect._doCheckMouseClick = function(ev){
if (!$("#ptTimeSelectCntr:visible").length) {
return;
}
if ( !jQuery(ev.target).closest("#ptTimeSelectCntr").length
&& jQuery(ev.target).not("input.isPtTimeSelectActive").length ){
jQuery.ptTimeSelect.closeCntr();
}
};// jQuery.ptTimeSelect._doCheckMouseClick
请帮忙
真正的代码。但有时这个问题来自jquery版本。也许你必须使用jquery没有冲突
经过几次尝试,我发现 Joomla 有一个包含 JavaScript 库的错误,我通过使用将代码直接复制到视图/默认模板中来解决此问题
<?php
$document = JFactory::getDocument();
$document->addScriptDeclaration("
//300 lines of ptTimeSelect code
")
希望这对遇到同样问题的其他人有所帮助。