نمایش نتایج 1 تا 4 از 4

نام تاپیک: چرا اسکریپت من درست کار نمی کنه؟

  1. #1

    Question چرا اسکریپت من درست کار نمی کنه؟

    سلام به همه دوستان. اسکریپت زیر برای متن خاصیت onmousover هست. در ابتدای صفحه وب خوب کار می کنه ولی در انتهای صفحه هر چی اسکرول بار رو بیشتر پایین می کشیم متن نمایش داده شده توسط این اسکریپت از نشانگر ماوس فاصله می گیره و بالاتر نمایش پیدا می کنه تا جایی که اگه صفحه وب خیلی بزرگ باشه در لینک های انتهای صفحه متن نمایش داده شده به قدری از نشانگر ماوس فاصله داره که اصلاً دیده نمیشه. مشکل رو چطوری می تونم حل کنم؟
    <html>
    <head>
    <SCRIPT LANGUAGE="JavaScript">
    <!-- Original: Randy Bennett (rbennett@thezone.net) -->
    <!-- Web Site: http://home.thezone.net/~rbennett/utility/javahead.htm -->

    <!-- Begin
    function setupDescriptions() {
    var x = navigator.appVersion;
    y = x.substring(0,4);
    if (y>=4) setVariables();
    }
    var x,y,a,b;
    function setVariables(){
    if (navigator.appName == "Netscape") {
    h=".left=";
    v=".top=";
    dS="document.";
    sD="";
    }
    else
    {
    h=".pixelLeft=";
    v=".pixelTop=";
    dS="";
    sD=".style";
    }
    }
    var isNav = (navigator.appName.indexOf("Netscape") !=-1);
    function popLayer(a){
    desc = "<table cellpadding=3 border=1 bgcolor=F7F7F7><td>";
    if (a==1) desc += "JavaScript Source Code 3000 Home Page!";
    if (a==2) desc += "Updates on all the latest scripts added to the site!";
    if (a==3) desc += "Browser our Table of Contents page!";
    if (a==4) desc += "Get JavaScript assistance in our JS forum!";
    if (a==5) desc += "Get the answers to our commonly asked JS questions!";
    desc += "</td></table>";
    if(isNav) {
    document.object1.document.write(desc);
    document.object1.document.close();
    document.object1.left=x+25;
    document.object1.top=y;
    }
    else {
    object1.innerHTML=desc;
    eval(dS+"object1"+sD+h+(x+25));
    eval(dS+"object1"+sD+v+y);
    }
    }
    function hideLayer(a){
    if(isNav) {
    eval(document.object1.top=a);
    }
    else object1.innerHTML="";
    }
    function handlerMM(e){
    x = (isNav) ? e.pageX : event.clientX;
    y = (isNav) ? e.pageY : event.clientY;
    }
    if (isNav){
    document.captureEvents(Event.MOUSEMOVE);
    }
    document.onmousemove = handlerMM;
    // End -->
    </script>
    </head>

    <BODY OnLoad="setupDescriptions()">

    <div id="object1" style="position:absolute; visibility:show; left:25px; top:-50px; z-index:2">layer hidden off the screen</div>

    <a href="http://javascriptsource.com" onMouseOver="popLayer(1)" onMouseOut="hideLayer(-50)">Home Page</a>
    <p>
    <a href="http://javascriptsource.com/new.html" onMouseOver="popLayer(2)" onMouseOut="hideLayer(-50)">What's New?</a>
    <p>
    <a href="http://javascriptsource.com/toc.html" onMouseOver="popLayer(3)" onMouseOut="hideLayer(-50)">Site Contents</a>
    <p>
    <a href="http://javascriptsource.com/forum/" onMouseOver="popLayer(4)" onMouseOut="hideLayer(-50)">JavaScript Forum</a>
    <p>
    <a href="http://javascriptsource.com/faq/" onMouseOver="popLayer(5)" onMouseOut="hideLayer(-50)">JavaScript FAQs</a>
    <p>
    <a href="http://javascriptsource.com" onMouseOver="popLayer(1)" onMouseOut="hideLayer(-50)">Home Page</a>
    <p>
    <a href="http://javascriptsource.com/new.html" onMouseOver="popLayer(2)" onMouseOut="hideLayer(-50)">What's New?</a>
    <p>
    <a href="http://javascriptsource.com/toc.html" onMouseOver="popLayer(3)" onMouseOut="hideLayer(-50)">Site Contents</a>
    <p>
    <a href="http://javascriptsource.com/forum/" onMouseOver="popLayer(4)" onMouseOut="hideLayer(-50)">JavaScript Forum</a>
    <p>
    <a href="http://javascriptsource.com/faq/" onMouseOver="popLayer(5)" onMouseOut="hideLayer(-50)">JavaScript FAQs</a>
    <p>
    <a href="http://javascriptsource.com" onMouseOver="popLayer(1)" onMouseOut="hideLayer(-50)">Home Page</a>
    <p>
    <a href="http://javascriptsource.com/new.html" onMouseOver="popLayer(2)" onMouseOut="hideLayer(-50)">What's New?</a>
    <p>
    <a href="http://javascriptsource.com/toc.html" onMouseOver="popLayer(3)" onMouseOut="hideLayer(-50)">Site Contents</a>
    <p>
    <a href="http://javascriptsource.com/forum/" onMouseOver="popLayer(4)" onMouseOut="hideLayer(-50)">JavaScript Forum</a>
    <p>
    <a href="http://javascriptsource.com/faq/" onMouseOver="popLayer(5)" onMouseOut="hideLayer(-50)">JavaScript FAQs</a>
    <p>
    <a href="http://javascriptsource.com" onMouseOver="popLayer(1)" onMouseOut="hideLayer(-50)">Home Page</a>
    <p>
    <a href="http://javascriptsource.com/new.html" onMouseOver="popLayer(2)" onMouseOut="hideLayer(-50)">What's New?</a>
    <p>
    <a href="http://javascriptsource.com/toc.html" onMouseOver="popLayer(3)" onMouseOut="hideLayer(-50)">Site Contents</a>
    <p>
    <a href="http://javascriptsource.com/forum/" onMouseOver="popLayer(4)" onMouseOut="hideLayer(-50)">JavaScript Forum</a>
    <p>
    <a href="http://javascriptsource.com/faq/" onMouseOver="popLayer(5)" onMouseOut="hideLayer(-50)">JavaScript FAQs</a>
    <p>

    <!-- Script Size: 2.93 KB -->
    </body>
    </html>

  2. #2

    نقل قول: چرا اسکریپت من درست کار نمی کنه؟

    ;y = ( (isNav) ? e.pageY : event.clientY )+document.body.scrollTop

  3. #3

    نقل قول: چرا اسکریپت من درست کار نمی کنه؟

    نقل قول نوشته شده توسط mrbm_2007 مشاهده تاپیک
    ;y = ( (isNav) ? e.pageY : event.clientY )+document.body.scrollTop
    خیلی خیلی ممنونم از شما کاربر محترم mrbm_2007 . جواب شما خیلی مفید بود.

  4. #4
    کاربر جدید
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    تهران
    پست
    23

    نقل قول: چرا اسکریپت من درست کار نمی کنه؟

    شاید به دردت بخوره :
    ///////گرفتن موقعیت ماوس در netScape///////////////
    function getPageEventCoords(evt)
    {
    var coords = {left:0, top:0};
    if (evt.pageX) {
    coords.left = evt.pageX;
    coords.top = evt.pageY;
    }
    else if (evt.clientX)
    {
    coords.left =
    evt.clientX + document.body.scrollLeft - document.body.clientLeft;
    coords.top =
    evt.clientY + document.body.scrollTop - document.body.clientTop;
    if (document.body.parentElement && document.body.parentElement.clientLeft)
    {
    var bodParent = document.body.parentElement;
    coords.left += bodParent.scrollLeft - bodParent.clientLeft;
    coords.top += bodParent.scrollTop - bodParent.clientTop;
    }
    }
    return coords;
    }
    ///////گرفتن موقعیت ماوس در IE///////////////
    function getPositionedEventCoords(evt)
    {
    var elem = (evt.target) ? evt.target : evt.srcElement;
    var coords = {left:0, top:0};
    if (evt.layerX) {
    coords.left = evt.layerX - borders.left;
    coords.top = evt.layerY - borders.top;
    }
    else if (evt.offsetX)
    {
    coords.left = evt.offsetX;
    coords.top = evt.offsetY;
    }
    evt.cancelBubble = true;
    return coords;
    }

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •