Как удалить throbber из ссылки Drupal 7 Ajax?
мы используем фреймворк drupal 7 ajax для загрузки содержимого на страницу. Когда клика нажата, после связи во время обработки запроса появляется дробилка.
Я не могу найти документацию о том, как установить или удалить throbber. В форме это выглядит очень просто, но с использованием ссылки ajax и пункта меню обратного вызова я не могу найти никакой документации.
Я вижу, что есть переменная $settings, которая может быть передана функции ajax_command_html, но я не вижу никаких документов о том, как ее форматировать.
Ответы
Ответ 1
когда вы создаете элемент формы, вам нужно определить свойство "progress":
$mycheckbox=array(
'#type' => 'checkbox',
'#title' => 'Load it up',
'#ajax' => array(
'callback' => 'ajax_example_callback',
'wrapper' => 'checkboxes-div',
'effect' => 'slide',
'progress' => array('type' => 'none'),
),
);
Вы можете найти более подробную информацию и примеры здесь
Ответ 2
Вы можете просто скрыть div.ajax-progress-throbber, установив для отображаемого значения значение none:
.ajax-progress-throbber {
display: none;
}
Может быть полезен модуль, такой как CSS Injector (http://drupal.org/project/css_injector).
Ответ 3
Я нашел ответ на свой вопрос. Важно понять, что есть два способа, которыми ссылки могут быть представлены в Drupal 7. Первый использует старую l() и другой использует массив рендеринга. Многие из функций темы в Drupal используют старый стиль, а когда он используется, он не запускается через drupal_prerender_link(). Это то, что делает предварительную обработку элемента, которая передает настройки с php на уровень js.