-1

ツールチップと構文ハイライトはそれ自体で機能しますが、強調したいコードをpreタグに入れると。構文の強調表示のみが機能し、ツールチップは機能しません。両方のSyntaxHighlighterjs.Highlighter.Tooltipを 試しましたがまだ機能しません。simpletooltipのツールチップを使用し ています。どうすればよいか教えてもらえますか?ツールチップを変更する必要がありますか、構文の強調表示を変更する必要があります。どのツールチップまたは構文の強調表示を使用する必要がありますか?

<pre><code class = "python"> 
<p id = "filecontents" class="word_split">False None True False go the way False</p>
</code></pre>

$(document).ready(function(){
$(".word_split").lettering('words');
$('.word_split').mouseover(function(event) {
var word=event.target.innerHTML;
if (word == "False")
   showToolTip('False','False keyword',event);
$('.word_split').mouseout(function(event) {
var word=event.target.innerHTML;
if (word == "False")
   hideToolTip();
});
});
});

私は単語を検出するためにレタリングプラグインを使用しています。マウスがFalseという単語にカーソルを合わせるたびに、説明が表示されます。

4

2 に答える 2

0

問題を解決するために別のツールチップ(Qtip)を使用しました。

于 2012-10-02T21:21:41.400 に答える
0

名前の競合のように聞こえます。をお読みください.noConflict()http://api.jquery.com/jQuery.noConflict/これは、両方が$記号を使用しているためです。1つのライブラリが他のライブラリと競合しないように、jQueryなどのエイリアスを使用する必要があります。ライブラリを頻繁に使用する場合、これは必ず発生します。単にライブラリを切り替えるのではなく、noConflictに精通することをお勧めします。

編集

かなりの量のコードエラーと提案された改善。

First Your })for Mouseoverは、マウスオーバーの最後ではなく、コードブロックの最後にありました。基本的に、あなたのマウスアウトはあなたのモールスオーバーの中にありました。

次に、単語を分割するときに子spanタグを作成するため、マウスオーバーのセレクターはそれらをチェックする必要があります。

3番目のifステートメントにはがありませんでした{}。これは、ifに1行を超えるコードを挿入した場合、コードが壊れることを意味します(間違いではなく、ベストプラクティスではありません)。

4番目に、Jqueryを使用しているので、使用して単語を取得しません$(this)か?

最後に、文字列を比較するときは、それが「false」か「False」かわからない場合があり、大文字と小文字が重要になるため、意図的にFalseだけが必要な場合を除いて、小文字と比較の両方を使用して最良の結果を得るようにしてください。

$(document).ready(function(){

    $("#demo2 h1").lettering('words');

    $('.word_split span').mouseover(function(event) {
        var word = $(this).text().toLowerCase();
        if (word == "False".toLowerCase()){
           showToolTip('False','False keyword',event);
        }
    });
    $('.word_split span').mouseout(function(event) {
      var word=$(this).text().toLowerCase();
      if (word == "False".toLowerCase()){
         hideToolTip();
      }
   });

});
于 2012-09-25T05:29:53.217 に答える