Javaの道 Javaに関する
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道 >  掲示板 >  掲示板(JQueryプラグインのbaloonを使いマウスオーバー時に取得したIDを基に、動的にHTMLコンテンツを吹き出し表示したい)
閲覧数:138
掲示板(JQueryプラグインのbaloonを使いマウスオーバー時に取得したIDを基に、動的にHTMLコンテンツを吹き出し表示したい)
名前
匿名
題名 JQueryプラグインのbaloonを使いマウスオーバー時に取得したIDを基に、動的にHTMLコンテンツを吹き出し表示したい
質問内容

質問を評価する
(0ポイント)
リンクをマウスオーバーしたとき、リンクのhrefの値を取得して吹き出ししたいHTMLのidを割り出します。そしてhtml()メ
ソッドでasideタグ以下の要素を取得し、それをtooltip用プラグインであるballoonのcontents属性にセットして動的に表示
するHTMLを変えたいと思っています。(アイデア1)では一時変数contentにmouseoverイベント時に取得したhtmlを格
納し、それをbaloonで表示したいと思いました。しかしこのメソッドチェーンでは動いてくれません。(アイデア2)では
balloon実行時に無名関数を利用しquotelinkクラスからhrefを取得したいと思ったのですが、$(this)ではquotlinkクラスオ
ブジェクトが取得できません。

みなさんのお知恵をお貸しください。よろしくお願いします。


■画面に吹き出し表示したい箇所のHTML

   <aside id="q56" style="padding-top: 40px; margin-top: -40px;">
     <div id="reply" >
       <div>
          <span class="filecaption">1390245737775.jpg (75KB, 661x720)</span>
          <a id="reply_image" href="/uploads/fullsize/1390245737775.jpg" target="_blank">
            <img src="/uploads/thumbs/1390245737775.jpg" alt=""></a>
          <blockquote class="postMessage">
              たたたたああああああああああああああ<br>
          </blockquote>
       </div>
    </div>
  </aside>


■マウスオーバーする箇所
    <a href="/threads/international/22#q56" id="c56" class="quotelink">56</a>


■javascript:
(アイデア1)
    var content;
    $('.quotelink')
    .on("mouseover", function () {
      var link = $(this).attr("href");
      var num = String(link).split("#");alert('num = ' + num);
      content = $("aside#" + num[1]).html();
      content = content.replace(/\r\n/g, "");//IE
      content = content.replace(/\n/g, "");//Firefox
    }).balloon({
        showDuration: 0,
        hideDuration: 0,
        minLifetime: 0,
        tipSize: 0,
        offsetY: 50,
        contents: content,
        css: {
          opacity: "1.0"
        }
      })
    });

(アイデア2)
    var content;
    $('.quotelink').balloon({
        showDuration: 0,
        hideDuration: 0,
        minLifetime: 0,
        tipSize: 0,
        offsetY: 50,
        contents: function() {
          var link = $(this).attr("href");
          var num = String(link).split("#");alert('num = ' + num);
          content = $("aside#" + num[1]).html();
          content = content.replace(/\r\n/g, "");//IE
          content = content.replace(/\n/g, "");//Firefox
          alert('content = ' + content);
          return content;
        },
        css: {
          opacity: "1.0"
        }
      })
    });
質問日時 2014-02-01 16:55:57
名前
匿名
回答内容

回答を評価する
(0ポイント)
えーと…。JavaScriptの話でしかないようなんだが。
回答日時 2014-02-01 19:18:03
回答内容を入力し、「確認」ボタンをクリックしてください。
ログインしていません。ログインしなくても回答はできますが、ログインすると、質問・回答の管理、更新があった場合のメールでの通知を受けることができます。 ユーザIDをお持ちでない方は「ID登録」からユーザIDの登録を行ってください。
氏名 匿名
回答内容
 



このページのトップへ
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道_CopyrightJavaの道