0

我是 Joomla 的新手,我尝试构建我的 Joomla 组件,但是,当我尝试将 Jquery ptTimeSelect 库包含到前端时,它显示 javascript 错误

未捕获的类型错误:无法读取未定义的属性“_doCheckMouseClick”

google了很多,确实改了代码的地方,好像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

请帮忙

4

2 回答 2

0

经过几次尝试,我发现 Joomla 有一个包含 JavaScript 库的错误,我通过将代码直接复制到视图/默认模板中来解决这个问题,使用

<?php
$document = JFactory::getDocument();
$document->addScriptDeclaration("
  //300 lines of ptTimeSelect code
")

希望这对遇到同样问题的其他人有所帮助。

于 2015-04-28T02:01:25.733 回答
0

我不知道真正的代码.. 但有时这个问题来自 jquery 版本。也许你必须使用jquery 没有冲突

于 2015-04-27T08:24:25.493 回答