以下の手順/コードに従って、jQueryアコーディオンコンテンツページをDrupal7サイトに追加できました: http://www.chrisherberte.com/blog/drupal-7-and-jquery-ui-accordion 。
ただし、ドロップダウンフィールドの高さが正しく計算されていません。空白が多くて長すぎるものもあれば、短すぎるものもあり、すべてのテキストを表示するためにスクロールバーが追加されます。各フィールドのすべての高さを取得し、それを使用して平均高さを計算し、それを適用しているようです。
私はデフォルトのBartikテーマとカスタムテーマを試しましたが、機能はどちらも同じなので、cssの問題ではなく、jquery自体の問題です。
これに加えて、HTMLリスト要素を使用すると、すべてが同時に機能しなくなり、 フォーマットを完全に混乱させる になります。
私はこの問題を修正するためにJqueryをどこでどのように編集するのかまったくわかりませんし、コアをハッキングしたくもありません。
まず autoHeightをfalse に設定してみてください。これにより高さの問題が修正されます。
Drupalでは se behaviors も考慮する必要があります。
<?php
drupal_add_library('system', 'ui.accordion');
drupal_add_js("
(function ($) {
Drupal.behaviors.accordionRoles = {
attach: function (context, settings) {
$('#accordion').accordion({
autoHeight: false
});
}
};
}(jQuery));
", 'inline');
?>
次に、HTMLリストに関する問題を見つけることができました。HTMLを取得してローカルに配置し、jQuery UIアコーディオンに デモソース を使用しました(セクション3にはHTMLリストが含まれています)。 。