Skip to main content

How can I create an empty HTML anchor so the page doesn"t "jump up' when I click it?


I'm working on some JQuery to hide/show some content when I click a link. I can create something like:




<a href="#" onclick="jquery_stuff" />



But if I click that link while I'm scrolled down on a page, it will jump back up to the top of the page.



If I do something like:




<a href="" onclick="jquery_stuff" />



The page will reload, which rids the page of all the changes that javascript has made.



Something like this:




<a onclick="jquery_stuff" />



Will give me the desired effect, but it no longer shows up as a link. Is there some way to specify an empty anchor so I can assign a javascript handler to the onlick event, without changing anything on the page or moving the scrollbar?


Source: Tips4allCCNA FINAL EXAM

Comments

  1. Put a "return false;" on the second option:

    <a href="" onclick="jquery_stuff; return false;" />

    ReplyDelete
  2. You need to return false; after the jquery_stuff:

    <a href="no-javascript.html" onclick="jquery_stuff(); return false;" />


    This will cancel the default action.

    ReplyDelete
  3. You can put simply as like below:

    <a href="javascript:;" onclick="jquery_stuff">

    ReplyDelete
  4. <a href="javascript:;" onclick="jquery">link</a>


    href requires something in there if you want it to not pop up errors in validators for html. The javascript:; is a good place holder.

    If you really want to use the #:

    <a href="#me" name="me" onclick="jquery">link</a>


    Be careful with the return false;, it halts default behaviours of whatever you are doing.

    Also if your js is like a submit you may run into problems in internet explorer.

    ReplyDelete
  5. <a href="javascript:// some helpful comment " onclick="jquery_stuff" />

    ReplyDelete
  6. I usually use a <span> and style it to look like a link when I need to accomplish something like this.

    ReplyDelete
  7. Usually I do:

    <a style="cursor:pointer;" onclick="whatever();">Whatever</a>

    ReplyDelete
  8. How about this:

    <a href="#nogo" onclick="foo();">some text</a>

    ReplyDelete
  9. jQuery has a function built in for this called preventDefault which can be found here:
    http://api.jquery.com/event.preventDefault/

    Here's their example:

    <script>
    $("a").click(function(event) {
    event.preventDefault();
    });
    </script>

    ReplyDelete
  10. Check eyelidlessness' comment. Was just about to post the same advice. An anchor that doesn't link to a resource and merely executes a script should be implemented as a button.

    ReplyDelete

Post a Comment

Popular posts from this blog

Slow Android emulator

I have a 2.67 GHz Celeron processor, 1.21 GB of RAM on a x86 Windows XP Professional machine. My understanding is that the Android emulator should start fairly quickly on such a machine, but for me it does not. I have followed all instructions in setting up the IDE, SDKs, JDKs and such and have had some success in staring the emulator quickly but is very particulary. How can I, if possible, fix this problem?

CCNA 3 Final Exam => latest version

1 . Which security protocol or measure would provide the greatest protection for a wireless LAN? WPA2 cloaking SSIDs shared WEP key MAC address filtering   2 . Refer to the exhibit. All trunk links are operational and all VLANs are allowed on all trunk links. An ARP request is sent by computer 5. Which device or devices will receive this message? only computer 4 computer 3 and RTR-A computer 4 and RTR-A computer 1, computer 2, computer 4, and RTR-A computer 1, computer 2, computer 3, computer 4, and RTR-A all of the computers and the router   3 . Refer to the exhibit. Hosts A and B, connected to hub HB1, attempt to transmit a frame at the same time but a collision occurs. Which hosts will receive the collision jamming signal? only hosts A and B only hosts A, B, and C only hosts A, B, C, and D only hosts A, B, C, and E   4 . Refer to the exhibit. Router RA receives a packet with a source address of 192.168.1.65 and a destination address of 192.168.1.161...