Drupal 7 未定义非函数-Drupal 7-JQuery对话框-无UI CSS
我学习了和等教程。乍一看,它们非常简单,比如如何将jqueryui添加到drupal7。尽管如此,当我应用它们时,我得到的只是函数对话框未定义。以下是我所做的: template.phpDrupal 7 未定义非函数-Drupal 7-JQuery对话框-无UI CSS,drupal-7,jquery-ui-dialog,Drupal 7,Jquery Ui Dialog,我学习了和等教程。乍一看,它们非常简单,比如如何将jqueryui添加到drupal7。尽管如此,当我应用它们时,我得到的只是函数对话框未定义。以下是我所做的: template.php function mytheme_preprocess_image(&$variables) { drupal_add_library('system','ui.dialog'); } chat_overlay.js jQuery(document).ready(function(){
function mytheme_preprocess_image(&$variables) {
drupal_add_library('system','ui.dialog');
}
chat_overlay.js
jQuery(document).ready(function(){
console.log("*********************Setting up click");
jQuery('#small_chat_wrapper #chat_message').click(function(){
console.log("*********************CLICKED CLICKED");
if (typeof jQuery.ui !== 'undefined')
console.log("loaded");
else
console.log("undefined");
jQuery('#chat_overlay').dialog('open');
});
})
控制台日志出色地打印出来,而如果检查则打印出加载的。尽管如此,当它到达.dialog(..)
行时,会出现未定义错误。我不知道还能尝试什么。这么简单的一件事,它正在变得痛苦
非常感谢您的帮助
编辑:
站点的状态报告包含以下内容:
jQuery更新jQuery 1.7.1和jQuery UI 1.8.7
我的错误是:
将函数mytheme\u预处理\u图像(&$variables)
更改为函数mytheme\u预处理\u页面(&$variables)
。天哪
现在,未定义错误不再发生,但是,即使添加了ui类和div,ui CSS也不会通过(对话框不会弹出)
非常感谢您的帮助。您应该在template.php的preprocess_html函数中或在您的module_init hook中加载所需的jquery库,如下所示:
<?php
function yourmodule_init(){
drupal_add_library('system', 'ui.dialog');
drupal_add_library('system', 'ui.draggable');
drupal_add_library('system', 'ui.sortable');
}
?>
来源:正在检查。。。当然,你有一个ID为“chat\u overlay”的元素吗。因此:。。。它的样式是“display:none”;是否包含完整的jQuery UI库?。。。下载时,它可以让你选择你想要的小部件。。。你有没有可能没有对话框?Drupal7默认附带jQueryUI,我从来没有下载过任何东西。由于Drupal 7附带了jQuery UI,因此jQuery UI模块已被弃用并移动到jQuery更新模块