Skip to content
  • Recent
  • Tags
  • Popular
  • Users
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

Lay Theme Forum

  1. Home
  2. General Discussion
  3. Overlay button

Overlay button

Scheduled Pinned Locked Moved General Discussion
3 Posts 2 Posters 589 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R
    R
    rioma7
    wrote on last edited by
    #1

    Hi there.

    I was wondering how is it possible to add a customized button which is an overlay on any page. I am looking to add something that is similar to the typeface's rectangle that can be moved on this website http://www.collletttivo.it

    Is there someone that can help me? Thanks

    1 Reply Last reply
    0
    • R
      R
      rioma7
      wrote on last edited by
      #2

      I have solved this request by myself but if someone is interested, here is the code I used.

      Custom CSS

      body {
          position: relative;
      }
      #buttonCta {
          position: fixed;
          z-index: 999;
          border-radius: 70px;
          background-color: #0000FF;
          border: 5px solid #F0FCD2;
          text-align: center;
          padding: 12px 25px;
          cursor: move;
      }
      
      #buttonCta     a {
          
              font-family: SpaceMono-Regular;
              color: #F0FCD2;
              text-align: center;
              text-transform: uppercase;
              font-size: 60px;
              cursor: pointer;
       }
       
      #buttonCta:hover {
              background-color: #F0FCD2;
              border: 5px solid #0000FF;
          }
      
          
          #buttonCta:hover a {
              color: #0000FF;
          }
      
       @media only screen and (max-width: 601px) {
             #buttonCta {
              display: none;
             }
          }
      
      

      CUSTOM HEAD CONTENT (JAVASCRIPT)

      <script type="text/javascript">
      document.addEventListener('DOMContentLoaded', () => {
      const cta = document.getElementById("buttonCta");
      
      if((window.innerWidth > 601) && cta) {
          var randomtop = Math.floor(Math.random() * 70);
          var randomleft = Math.floor(Math.random() * 70);
          cta.style.top = `${randomtop}vh`;
          cta.style.left = `${randomleft}vw`;
          dragElement(cta);
      }
      
      console.log(window.innerWidth > 601, cta)
      
      function dragElement(elmnt) {
        var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0;
      
          elmnt.onmousedown = dragMouseDown;
      
        function dragMouseDown(e) {
          e = e || window.event;
          e.preventDefault();
          // get the mouse cursor position at startup:
          pos3 = e.clientX;
          pos4 = e.clientY;
          document.onmouseup = closeDragElement;
          // call a function whenever the cursor moves:
          document.onmousemove = elementDrag;
        }
      
        function elementDrag(e) {
          e = e || window.event;
          e.preventDefault();
          // calculate the new cursor position:
          pos1 = pos3 - e.clientX;
          pos2 = pos4 - e.clientY;
          pos3 = e.clientX;
          pos4 = e.clientY;
          // set the element's new position:
          elmnt.style.top = (elmnt.offsetTop - pos2) + "px";
          elmnt.style.left = (elmnt.offsetLeft - pos1) + "px";
        }
      
        function closeDragElement() {
          /* stop moving when mouse button is released:*/
          document.onmouseup = null;
          document.onmousemove = null;
        }
      }
      });
      </script>
      
      

      CUSTOM HTML TOP

      <div id="buttonCta">
          <a href="LINK">TEXT ON THE BUTTON</a>
      </div>
      
      1 Reply Last reply
      1
      • RichardR
        RichardR
        Richard
        Global Moderator
        wrote on last edited by
        #3

        @rioma7 Awesome! Upvote from me :)

        have a great day

        1 Reply Last reply
        0

        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

        With your input, this post could be even better 💗

        Register Login
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        Online Users
        Forgot your key, lost your files, need a previous Lay Theme or Addon version? Go to www.laykeymanager.com
        laytheme.com
        • Login

        • Don't have an account? Register

        • Login or register to search.
        • First post
          Last post
        0
        • Recent
        • Tags
        • Popular
        • Users
        • Search