全文を表示するには、トリミングされたビューフィールドにカーソルを合わせますか?


8

ビューテーブルにテキストフィールドがあり、結果の書き換え->このフィールドを省略記号オプションをオンにして最大長にトリミングします。このトリミングされたテキストにカーソルを合わせると、フルバージョンがポップアップとして表示されるか、ビューが更新されてフルテキストが表示されるようにすることは可能ですか?

回答:


10

私自身の賞金問題に答えるのは嫌いですが、これは私が望んでいるとおりに機能します。

beautytipsモジュールでこれを行うための素晴らしい方法を見つけました。私のフィールドはアドレス(field_address)です。ビューにfield_addressを追加し、省略->トリムで再書き込み->トリムを実行して、表示から除外します。今度は同じフィールドをもう一度追加して、フィールドの出力を次のように書き換えます。

<div class="beautytips" title="[field_address_1]">[field_address]</div>

(美容チップの設定で「すべてのページに美容チップのjsを追加する」を有効にしています)

+1 zhilevanの回答も非常に良い解決策ですが、残念ながら、ロールバック/ロールアップ/クローズオプションが欠落しています。


7

私は中に提案Rewrite resultsのようなHTML要素で、あなたの結果を置く<div><span>、とそれを指定しますidclass。その後、Jquery Readmoreプラグインを使用します。

このサンプルは、jquery readmoreプラグインの使用に役立つ可能性があります


それは素晴らしいことだと思いますが、最初のコメントが最初のリンクで述べているように、特にテーブル内のように、本当にロールバックも必要です。
7wonders '07

うわー、評判+25。あなたは素晴らしい七不思議です。ありがとう。
ユセフ2012

1

JSでそれを行うと思います。それははるかに簡単であり、まだ仕事をします。

手順:

  1. ビューにフィールド全体を出力する
  2. ページの読み込み時にそれをトリミングします。元の完全な説明を別のコンテナに複製し、特別なクラスまたはIDを付けます
  3. 最後に省略記号を追加し、ホバー/クリック時に関数をアタッチします
  4. ユーザーがクリック/ホバーすると、クローンされた説明がポップアップに表示されます(テキストが多く、レイアウトが壊れる場合)。

必要に応じて、これの代わりに、余分な文字をスパンにラップして非表示にすることができます。省略記号をクリックすると、別のクラスをスパンに適用して表示できます。


1
(function($) {
    Drupal.behaviors.expalain_popup = {
      attach:function() {
        jQuery('a.open_popup_link').click(function(){
          var node_id = jQuery(this).attr('data-value');
          window.open('/open_popup/node/'+node_id, 'Explain '+node_id,'width=450,height=600,resizable=1,scrollbars=1,toolbar=0,location=0');
        });
    }
  };
}(jQuery));

このコードは、目標を達成するのに役立ちます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.