Discussion:
connect to keyboard events not working in FireFox?
SimonS
2010-02-05 07:34:32 UTC
Permalink
Hi,

The following works for me in IE, Chrome and Safari, but fails in
FireFox 3.6 (running on Vistax64). The 'key down' event just doesn't
seem to get received:

=============================

<html>
<head>
<script type='text/javascript' src='MochiKit.js'></script>
<script type='text/javascript'>
addLoadEvent(function() {
connect(document.body, 'onkeydown', function(evt) {
$('key').innerHTML = evt.key().string;
});
});
</script>
</head>
<body>
<h1>PRESS A KEY</h1>
<div id='key'></div>
</body>
</html>

===============================

It seems fairly simple - any idea what's wrong here?

Cheers,

Simon.
--
You received this message because you are subscribed to the Google Groups "MochiKit" group.
To post to this group, send email to ***@googlegroups.com.
To unsubscribe from this group, send email to mochikit+***@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en.
Per Cederberg
2010-02-05 13:02:56 UTC
Permalink
A bit of Googling found a suggestion for test:

----
Firefox seems to need to have the tabindex="0" property set to some
value so it knows this Div or Span is keyboard selectable. That allows
the keyboard event to be triggered.
----

Perhaps that does the trick?

Cheers,

/Per - without the testing time right now
Post by SimonS
Hi,
The following works for me in IE, Chrome and Safari, but fails in
FireFox 3.6 (running on Vistax64).  The 'key down' event just doesn't
=============================
<html>
 <head>
   <script type='text/javascript' src='MochiKit.js'></script>
   <script type='text/javascript'>
     addLoadEvent(function() {
         connect(document.body, 'onkeydown', function(evt) {
           $('key').innerHTML = evt.key().string;
         });
     });
   </script>
 </head>
 <body>
   <h1>PRESS A KEY</h1>
   <div id='key'></div>
 </body>
</html>
===============================
It seems fairly simple - any idea what's wrong here?
Cheers,
Simon.
--
You received this message because you are subscribed to the Google Groups "MochiKit" group.
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en.
--
You received this message because you are subscribed to the Google Groups "MochiKit" group.
To post to this group, send email to ***@googlegroups.com.
To unsubscribe from this group, send email to mochikit+***@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en.
SimonS
2010-02-06 02:26:12 UTC
Permalink
I investigated further and I think you're right. However I found an
easier solution: binding the event to the window instead of the body
works without any tab index. However it does *not* work in IE. Sigh
- browser specific hacks either way.

In any case it's not MochiKit's fault: I verified that subscribing to
the same event using the DOM event api directly has the same result.

Thanks!

Simon.
Post by Per Cederberg
----
Firefox seems to need to have the tabindex="0" property set to some
value so it knows this Div or Span is keyboard selectable. That allows
the keyboard event to be triggered.
----
Perhaps that does the trick?
Cheers,
/Per - without the testing time right now
Post by SimonS
Hi,
The following works for me in IE, Chrome and Safari, but fails in
FireFox 3.6 (running on Vistax64).  The 'key down' event just doesn't
=============================
<html>
 <head>
   <script type='text/javascript' src='MochiKit.js'></script>
   <script type='text/javascript'>
     addLoadEvent(function() {
         connect(document.body, 'onkeydown', function(evt) {
           $('key').innerHTML = evt.key().string;
         });
     });
   </script>
 </head>
 <body>
   <h1>PRESS A KEY</h1>
   <div id='key'></div>
 </body>
</html>
===============================
It seems fairly simple - any idea what's wrong here?
Cheers,
Simon.
--
You received this message because you are subscribed to the Google Groups "MochiKit" group.
For more options, visit this group athttp://groups.google.com/group/mochikit?hl=en.
--
You received this message because you are subscribed to the Google Groups "MochiKit" group.
To post to this group, send email to ***@googlegroups.com.
To unsubscribe from this group, send email to mochikit+***@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/mochikit?hl=en.
Loading...