Использование наведения мыши в CSS - PullRequest
0 голосов
/ 03 февраля 2010

All

var a='<div id="details"  onmouseover="tip(this)">';

function tip(el)
{
    $(this).mouseover(function() {
    var b="<div id='test'>"+el.innerHTML+"</div>";
    $(b).css("display", "inline");
    });
}

Что-то не так с приведенным выше кодом? Я пытаюсь отобразить el.innerhtml на указателе мыши рядом с гиперссылкой

Ответы [ 4 ]

3 голосов
/ 03 февраля 2010

Почему бы не попробовать это вместо:

 function tip(el) {
     $(this).mouseover(function() {
     $("#test").html(el.innerHTML);
     $("#test").css("display","inline");
     }); }
2 голосов
/ 03 февраля 2010

Попробуйте расширить то, что вы хотите. Дайте нам список требований, изложите именно то, что вы хотите. Я полагаю, что если вы сделаете это, несколько голосов «за» будут отменены.

Со своей стороны, попробуйте это:

<div id="details">


<script type="text/javascript">
    $(document).ready(function(){
        $("#details").mouseover(function(){
            var $this = $(this);
            $this.append("<div id='test'>"+$this.html()+"</div>");
        });
    })
</script>

Чтобы показать / скрыть, было бы просто позвонить на .show() или .hide()

Если вы действительно хотели этот код:

var a='<div id="details"  onmouseover="tip(this)">'; 

Тогда вам придется добавить в DOM:

$(document).append('<div id="details">');

А затем свяжите свое событие:

$("#details").mouseover(function(){
2 голосов
/ 03 февраля 2010

Вам нужно добавить код на DOM вашей страницы, чтобы он мог отображаться. В настоящее время вы создаете div, устанавливаете CSS для него, но он все еще только в памяти.

0 голосов
/ 03 февраля 2010

Вы используете $(this) внутри своей функции, может быть, это должно быть $(el)? И вам нужно сделать что-то вроде $('body').append(b);, чтобы добавить <div> в DOM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...