Results 1 to 6 of 6

Thread: Bit of scripting help if possible please.
      
   

  1. #1
    Join Date
    Feb 2006
    Location
    Earth
    Posts
    8,721

    Default Bit of scripting help if possible please.

    Hi, can the section of script below be adapted to have a url image in place of the background colour of white. It’s to make a mouse over hint script a little nicer looking.


    var tipFontColor= "#17007c";
    var tipBgColor= "white";
    var tipBorderColor= "#18007b";
    var tipBorderWidth= 5;
    var tipBorderStyle= "solid";
    var tipPadding= 4;


    Hope you can help.

    Thanks.

  2. #2
    Watdaflip's Avatar
    Watdaflip is offline Major General
    Join Date
    Sep 2005
    Location
    Cincinnati, Ohio
    Posts
    2,119

    Default Re: Bit of scripting help if possible please.

    That would depend on the rest of the javascript and what it is doing.

    Register/Login Script
    Do you use a Password Protected Directory? Need a way to allow users to make their own account, try my .htaccess Login Script

  3. #3
    Join Date
    Feb 2006
    Location
    Earth
    Posts
    8,721

    Default Re: Bit of scripting help if possible please.

    Hi Watdaflip, & thanks for getting back. This is an example page that I am trying things out on with the mouse over hint/help script.

    Link to test page

    Ps. I forgot. Is there also an easy way to make? lets say Number 3 sticky. IE: if I have a url link in the hint pop out, this type of pop up hint stays open until I close it somehow, to enable a bit more time to click on the url. But dont worry if this is a lot of grief.









    Thanks.

  4. #4
    Watdaflip's Avatar
    Watdaflip is offline Major General
    Join Date
    Sep 2005
    Location
    Cincinnati, Ohio
    Posts
    2,119

    Default Re: Bit of scripting help if possible please.

    Hey, is this what you are looking for?

    http://globalreign.com/java.php

    If so heres the javascript code

    Code:
    <script type="text/javascript">
    
    /***********************************************
    * Image w/ description tooltip- By Dynamic Web Coding (www.dyn-web.com)
    * Copyright 2002-2007 by Sharon Paine
    * Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
    ***********************************************/
    
    /* IMPORTANT: Put script after tooltip div or 
         put tooltip div just before </BODY>. */
    
    var dom = (document.getElementById) ? true : false;
    var ns5 = (!document.all && dom || window.opera) ? true: false;
    var ie5 = ((navigator.userAgent.indexOf("MSIE")>-1) && dom) ? true : false;
    var ie4 = (document.all && !dom) ? true : false;
    var nodyn = (!ns5 && !ie4 && !ie5 && !dom) ? true : false;
    
    var origWidth, origHeight;
    
    // avoid error of passing event object in older browsers
    if (nodyn) { event = "nope" }
    
    ///////////////////////  CUSTOMIZE HERE   ////////////////////
    // settings for tooltip 
    // Do you want tip to move when mouse moves over link?
    var tipFollowMouse= true;    
    // Be sure to set tipWidth wide enough for widest image
    var tipWidth= 220;
    var tipHeight = 259;
    
    // Padding - how far to push text inward on image
    var pad_top = 20;
    var pad_bottom = 20;
    var pad_left = 42;
    var pad_right = 20
    
    var offX= 10;    // how far from mouse to show tip
    var offY= 12; 
    var tipFontFamily= "Verdana, arial, helvetica, sans-serif";
    var tipFontSize= "12pt";
    // set default text color and background color for tooltip here
    // individual tooltips can have their own (set in messages arrays)
    // but don't have to
    var tipFontColor= "#17007c";
    var tipBgColor= "white"; 
    
    var tipBorderStyle= "none";
    var tipPadding= 4;
    
    // tooltip content goes here (image, description, optional bgColor, optional textcolor)
    var messages = new Array();
    // multi-dimensional arrays containing: 
    // image and text for tooltip
    // optional: bgColor and color to be sent to tooltip
    messages[0] = new Array('http://www.collectors-info.com/testing/stamp_tip.jpg','To get some extra help we have installed plenty of hints & ideas like this one to help you along with all parts of our site. When ever you see a ? symbol there will be some extra advice or help in the form of a pop up. When you run your mouse over the symbol, these pop ups last for 1 &#189; seconds after you have moved your mouse off the ? symbol, and will then disappear, or will change if you move to another ? symbol. They last for 1 &#189; seconds to enable you to click on some of the links that some pop ups will have. ',"white");
    messages[1] = new Array('http://www.collectors-info.com/testing/stamp_tip.jpg','Test 1',"white");
    messages[2] = new Array('http://www.collectors-info.com/testing/stamp_tip.jpg','Test 2','black','white');
    messages[3] = new Array('http://www.collectors-info.com/testing/stamp_tip.jpg','<a href="http://www.collectors-info.com">Collectors-info.com</a>Test3','#ffffa8','#006400');
    
    ////////////////////  END OF CUSTOMIZATION AREA  ///////////////////
    
    // preload images that are to appear in tooltip
    // from arrays above
    if (document.images) {
        var theImgs = new Array();
        for (var i=0; i<messages.length; i++) {
          theImgs[i] = new Image();
            theImgs[i].src = messages[i][0];
      }
    }
    
    // to layout image and text, 2-row table, image centered in top cell
    // these go in var tip in doTooltip function
    // startStr goes before image, midStr goes between image and text
    var startStr = '<table width="' + tipWidth + '" height="' + tipHeight + '"><tr><td valign="top" style="border: none; padding-left: ' + pad_left + 'px; padding-top: ' + pad_top + 'px; padding-right: ' + pad_right + 'px; padding-bottom: ' + pad_bottom + 'px;" background="';
    var midStr = '"><span style="color: ' + tipFontColor + '">';
    var endStr = '</span></td></tr></table>';
    
    ////////////////////////////////////////////////////////////
    //  initTip    - initialization for tooltip.
    //        Global variables for tooltip. 
    //        Set styles
    //        Set up mousemove capture if tipFollowMouse set true.
    ////////////////////////////////////////////////////////////
    var tooltip, tipcss;
    function initTip() {
        if (nodyn) return;
        tooltip = (ie4)? document.all['tipDiv']: (ie5||ns5)? document.getElementById('tipDiv'): null;
        tipcss = tooltip.style;
        if (ie4||ie5||ns5) {    // ns4 would lose all this on rewrites
            tipcss.width = tipWidth+"px";
            tipcss.fontFamily = tipFontFamily;
            tipcss.fontSize = tipFontSize;
            tipcss.color = tipFontColor;
            tipcss.backgroundColor = tipBgColor;
            tipcss.padding = tipPadding+"px";
            tipcss.borderStyle = tipBorderStyle;
        }
        if (tooltip&&tipFollowMouse) {
            document.onmousemove = trackMouse;
        }
    }
    
    window.onload = initTip;
    
    /////////////////////////////////////////////////
    //  doTooltip function
    //            Assembles content for tooltip and writes 
    //            it to tipDiv
    /////////////////////////////////////////////////
    var t1,t2;    // for setTimeouts
    var tipOn = false;    // check if over tooltip link
    function doTooltip(evt,num) {
        if (!tooltip) return;
        if (t1) clearTimeout(t1);    if (t2) clearTimeout(t2);
        tipOn = true;
        // set colors if included in messages array
        if (messages[num][2])    var curBgColor = messages[num][2];
        else curBgColor = tipBgColor;
        if (messages[num][3])    var curFontColor = messages[num][3];
        else curFontColor = tipFontColor;
        if (ie4||ie5||ns5) {
            //var tip = startStr + messages[num][0] + midStr + '<span style="font-family:' + tipFontFamily + '; font-size:' + tipFontSize + '; color:' + curFontColor + ';">' + messages[num][1] + '</span>' + endStr;
            var tip = startStr + messages[num][0] + midStr + messages[num][1] + endStr;
            //tipcss.backgroundColor = curBgColor;
             tooltip.innerHTML = tip;
        }
        if (!tipFollowMouse) positionTip(evt);
        else t1=setTimeout("tipcss.visibility='visible'",100);
    }
    
    var mouseX, mouseY;
    function trackMouse(evt) {
        standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body //create reference to common "body" across doctypes
        mouseX = (ns5)? evt.pageX: window.event.clientX + standardbody.scrollLeft;
        mouseY = (ns5)? evt.pageY: window.event.clientY + standardbody.scrollTop;
        if (tipOn) positionTip(evt);
    }
    
    /////////////////////////////////////////////////////////////
    //  positionTip function
    //        If tipFollowMouse set false, so trackMouse function
    //        not being used, get position of mouseover event.
    //        Calculations use mouseover event position, 
    //        offset amounts and tooltip width to position
    //        tooltip within window.
    /////////////////////////////////////////////////////////////
    function positionTip(evt) {
        if (!tipFollowMouse) {
            mouseX = (ns5)? evt.pageX: window.event.clientX + standardbody.scrollLeft;
            mouseY = (ns5)? evt.pageY: window.event.clientY + standardbody.scrollTop;
        }
        // tooltip width and height
        var tpWd = (ie4||ie5)? tooltip.clientWidth: tooltip.offsetWidth;
        var tpHt = (ie4||ie5)? tooltip.clientHeight: tooltip.offsetHeight;
        // document area in view (subtract scrollbar width for ns)
        var winWd = (ns5)? window.innerWidth-20+window.pageXOffset: standardbody.clientWidth+standardbody.scrollLeft;
        var winHt = (ns5)? window.innerHeight-20+window.pageYOffset: standardbody.clientHeight+standardbody.scrollTop;
        // check mouse position against tip and window dimensions
        // and position the tooltip 
        if ((mouseX+offX+tpWd)>winWd) 
            tipcss.left = mouseX-(tpWd+offX)+"px";
        else tipcss.left = mouseX+offX+"px";
        if ((mouseY+offY+tpHt)>winHt) 
            tipcss.top = winHt-(tpHt+offY)+"px";
        else tipcss.top = mouseY+offY+"px";
        if (!tipFollowMouse) t1=setTimeout("tipcss.visibility='visible'",100);
    }
    
    function hideTip(time) {
        if (!tooltip) return;
        t2=setTimeout("tipcss.visibility='hidden'",time);
        tipOn = false;
    }
    
    document.write('<div id="tipDiv" style="position:absolute; visibility:hidden; z-index:100"></div>')
    
    
    </script>
    Also i edited the hide function. You have to edit the hideTip() function for each tooltip, now instead of not having any parameters you have to have how long you want it to be open. The current functions are

    hideTip()

    you need to change them all to

    hideTip(1200)


    And if there is a tooltip that you want to stay open longer set it to like

    hideTip(4000)

    I hope thats what you wanted.

    Register/Login Script
    Do you use a Password Protected Directory? Need a way to allow users to make their own account, try my .htaccess Login Script

  5. #5
    Join Date
    Feb 2006
    Location
    Earth
    Posts
    8,721

    Default Re: Bit of scripting help if possible please.

    I hope thats what you wanted.

    Hi! Sorry I didn’t get back sooner. (time/diff)
    This is just what was needed & absolutely perfect. I really appreciate the help.
    You have even saved my hair. Just got to brush up on my imaging skills now. lol


    Many, many thanks.

  6. #6
    Join Date
    Feb 2006
    Location
    Earth
    Posts
    8,721

    Default Re: Bit of scripting help if possible please.

    Hi Watdaflip!
    I have had a look around this script & was trying to stop the image repeating, but can’t find this part/function.
    What I was trying to do is set the max image to let say 400x250 but also may want to use a 150x100 image for smaller amounts of info. But when I try to insert a smaller image it repeats.
    Is there a way to use different size images in the script or even stopping the repeat function may solve it?
    Sample--- http://www.collectors-info.com/testing/hint.html 0&2 are fine but 1&3 arent.

    Cheers.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49