показать Div на Mouseover - PullRequest
       4

показать Div на Mouseover

0 голосов
/ 02 марта 2012

Я хочу, чтобы при первом щелчке он показывался через 3 секунды, но после первого щелчка, когда я щелкнул, он будет отображаться до 3 секунд

function Func1()
{

document.getElementById('div1').style.visibility = "visible" ;

}

function Func1Delay()
{

setTimeout("Func1()", 3000);

}

function Func2Delay()
{

document.getElementById('div1').style.visibility = "hidden" ;

}

Ответы [ 2 ]

1 голос
/ 02 марта 2012

Ваш английский или описание очень плохое, но насколько я понимаю, вы хотите что-то вроде этого:

var div = document.getElementById('div1'),t;
function changeStyle(element,prop,value){
    element.style[prop] = value;
}

function showDiv(){
    changeStyle(div,'opacity','1');
}

function hideDiv(){
    changeStyle(div,'opacity','0');
}

div.addEventListener('mouseover',function(){
    t = setTimeout(showDiv,3000);
},false);

div.addEventListener('mouseout',function(){
    clearTimeout(t);
    hideDiv();
},false);​

Вот демоверсия: http://jsfiddle.net/gion_13/TSVA5/
Вам нужно навести «невидимый» div, и он появится через 3 секунды.

0 голосов
/ 02 марта 2012

это работает для меня

разметка:

    <input type="button" value="clickme" onmouseout="ClearIntv()" onmouseover="DelayShow('showMe',5000)" />
    <div id="showMe" style="display:none;background-color:red;width:50px;height:50px;">

    </div>

скрипт:

    var intv;
    function DelayShow(timeOutMs) {
        var elm = document.getElementById("showMe");
        var now = new Date().getTime();
        var end = now + timeOutMs;;
        intv = setInterval(function () {
            now = new Date().getTime();
            if (now >= end) {
                elm.style.display = "block";
                clearInterval(intv);
            }
        }, 500);
    }
    function ClearIntv() {
        clearInterval(intv);
    }

Активирует счетчик на MouseOver и отменяет на MouseOut

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