問題タブ [tipsy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - D3 で Tipsy を使用してホバー テキストを小さくする
ほろ酔いは、ノードにカーソルを合わせると大量のテキストを表示するために使用されます。そのテキストを小さくしたいと思います。それ、どうやったら出来るの?
jquery - Jquery Tipsy は Jquery 2.1.4 で動作しませんか?
過去 2 年間、ほろ酔いを何度も問題なく使用してきましたが、構築中の新しいサイトで実行しようとすると、うまくいきません! 誰かが私が間違っていることを見つけることができますか?
それは私のウェブサイトにあり、私はそれを最低限の基本にまで切り詰めましたが、それでもうまくいきません!
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
、<script type="text/javascript" src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
、<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/jquery.tipsy/1.0.2/jquery.tipsy.css">
、および<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.tipsy/1.0.2/jquery.tipsy.min.js"></script>
を次のコードで呼び出して実行しました
今回私が行った唯一の違いは、JQuery 2.1.4 を使用することです。
javascript - Ajax で Tipsy が Undefined を返すのはなぜですか?
jQuery 2.1.4 を使用しています。
私はほろ酔いの最新の反復を使用しています。
私は、jQuery.live
が廃止され、使用することを知っています.on
。ここにあるように、ほろ酔いに変更を加えました:
と、
これは私のページの Javascript です。
要素にカーソルを合わせると、ほろ酔いから「未定義」になります。で正しい値を取得しますalert
。なぜほろ酔いは価値を見出せないのですか?私のphpファイルはjsonのヘッダーを送信しています。
私はjsonをdataTypeとして持っているので、テキストではなくオブジェクトを取得しています。result.lastname を返すときに、姓のテキストを送信しています (またはそう思っていました)。
Ajax を取り出して "hi" だけを使用すると、ほろ酔いが機能することがわかります。私のツールチップは機能します。さらに、json 以外の場所で使用しています。
ブラウザーの開発ツール (Chrome) でヘッダーと Javascript オブジェクトを確認し、手動でページを参照しました。私が見ることができる最善の方法であり、データとフォーマットを修正します(またはresult.lastnameを警告できませんでした)。
編集:
リンクされたSOの質問を読んで、非同期部分が私の「問題」であることを理解したので、.ajax呼び出しでこの知識を使用しました。
しかし、私は未定義になり続けています。コールバックを正しく行っているとは思いません。私は何を間違っていますか?
編集:
これを変更しました。これはコールバックではありませんか?何が起こっているかはわかりますが、解決策はわかりません。ここにコールバックがあると思いました。
ほろ酔いの中で:
javascript - Tipsy を D3 と手動トリガーで動作させる
私のプロジェクトでは、D3 フォース レイアウトでほろ酔いポップアップを「トグル」することを組み合わせようとしています。基本的に、画像をクリックしてそこにポップアップを表示し、ユーザーが操作できるようにしたいと考えています。ユーザーが完了したら、別の画像をクリックするか、同じ画像をクリックして閉じます。
コードの D3 部分は、強制レイアウトで画像のレンダリングを行います。基本的にコードは次のようになります。
Tipsy のリンクはhttp://onehackoranother.com/projects/jquery/tipsy/#にあります。基本をまっすぐにするために、次のようにテストしました。
ここまでは順調ですね; このコードを使用してホバーすると、すべて機能します。
最後の調整として、trigger: 'manual'
Tipsy のオプションを追加し、D3 ノードにいくつかのコードを追加しました。
ご覧のとおり、コードはhttp://onehackoranother.com/projects/jquery/tipsy/# (セクション: ツールチップを手動でトリガーする) のコードを厳密に反映しています。
このコードを実行すると、突然動作しなくなります。よく調べてみると、Tipsy コードの次の部分に問題があることに気付きました。
このコードを実行するthis.data('tipsy')
と、常にundefined
. ただし、選択されている要素は正しいようです。
私は他のSOの投稿を見てきましたが、これまでのところ運が悪いです。一部の人から提案されたように、さまざまなバージョンの jQuery を試したり、D3 の代わりに jQuery から onclick をバインドしようとしたりしました。これまでのところ、すべて同じ動作です。
誰かが私に欠けているものを教えてもらえますか?
最小限のテストケース
この作業が基づいているほろ酔い & D3 の単純な最小限のテスト ケースは、次のリンクにあります: http://bl.ocks.org/ilyabo/1373263。HTML コードは次のように置き換えることができます。
c - 古いバージョンの C ファイルを開く
銀河シミュレーションを視覚化するために使用されるプログラム (ほろ酔い) をインストールする必要があります (私の物理学の教授が私に勧めてくれて、彼もそれを使用しています)。
インストールしようとしましたが、makefile を作成しましたが、実行すると次のコードでエラーが発生します。
エラーは言う:
非 void 関数 'framepoints' は値を返す必要があります
値のないこの戻り値は C89 より前のバージョンのものであることは理解しましたが、解決方法がわかりません。インストールするために実行する必要があるコードは長いので、手動で変更することはできません (また、私の教授は、それが機能していると私に言いました)。
javascript - ツールチップの例を機能させようとしている
http://tooltipsy.com/から tooltipsy.min.js をダウンロードし、html ファイルと同じフォルダーに配置しました。これはまったく機能しない私のコードです。なんで?jquery コードをラップして$(document).ready()
も役に立ちませんでした。