Wizzud, thank you for your help.

Your code worked perfectly if the user had entered the text box by
*clicking* on it.
But, if the user has *tabbed* to the text box (and then clicks on
another element) the focus is returned to the text box that was last
*clicked* on.
This can be seen in my example HTML.

Thank you (or others) for any fine-tuning on this.

Paul

On 5 Jun, 09:54, Wizzud <[EMAIL PROTECTED]> wrote:
> Any good for you ... ?
>
> $(document).ready(function(){
>   var hasFocus = $(':text:first').focus();
>   $(document).bind('click', function(event){
>     var ev = $(event.target);
>     if(ev != hasFocus){
>       if (ev.is(':text')){
>         hasFocus = ev;
>       }
>       hasFocus.focus();
>     }
>   });
>
> });
>
> On Jun 5, 2:30 am, paulj <[EMAIL PROTECTED]> wrote:
>
> > Hi,
>
> > When a text box has the focus, I would like it to keep the focus even
> > when another element type (not another text box) is clicked. eg after
> > clicking this other element type, the user can press a key(s) and the
> > text box will accept this key input without the user having to click
> > back into the text box.
> > Hope this makes sense.
>
> > Karl gave me some info. the other day and I was pretty sure I would be
> > able to fine-tune it for my app. but the best I could come up with
> > is :
>
> > $(document).ready(function()
> > {
> >   $(':text').blur(function(event)
> >   {
> >       if (!$(event.target).is(':text'))
> >       { $(this).focus() }
> >   });
>
> > });
>
> > Thanks for any help
> > Paul
>
> > Here is the full code :
>
> > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/
> > TR/html4/strict.dtd">
> > <html>
>
> > <head>
>
> > <title></title>
> > <meta http-equiv="Content-Type" content="text/html;
> > charset=ISO-8859-1">
>
> >       <style type="text/css">
> >       input { width : 700px ; }
>
> >       </style>
>
> >  <script type = "text/javascript" src="jquery.js"></script>
> >  <script type = "text/javascript">
>
> > $(document).ready(function()
> > {
> >   $(':text').blur(function(event)
> >   {
> >       if (!$(event.target).is(':text'))
> >       { $(this).focus() }
> >   });
>
> > });
>
> >  </script>
>
> > </head>
>
> > <body>
>
> > <ul>
> > <li>click here</li>
> > <li>or click here</li>
> > </ul>
>
> > <br> <br>
>
> > <form>
>
> >  <input type='text' class='test' value='these text boxes should retain
> > the focus when another element type is clicked'> <br><br>
> >  <input type='text' value='these text boxes should retain the focus
> > when another element type is clicked'> <br><br>
> >  <input type='text'   value='these text boxes should retain the focus
> > when another element type is clicked' id='focusHere'> <br>
>
> > </form>
>
> > </body>
>
> > </html>

Reply via email to