Professional JavaScript for Web Developers by Nicholas C. Zakas

Professional JavaScript for Web Developers by Nicholas C. Zakas

Author:Nicholas C. Zakas
Language: eng
Format: mobi, pdf
Publisher: Wiley
Published: 2011-12-20T05:00:00+00:00


0 indicates that no button has been pressed.

1 indicates that the primary mouse button has been pressed.

2 indicates that the secondary mouse button has been pressed.

3 indicates that the primary and secondary buttons have been pressed.

4 indicates that the middle button has been pressed.

5 indicates that the primary and middle buttons have been pressed.

6 indicates that the secondary and middle buttons have been pressed.

7 indicates that all three buttons have been pressed.

As you can tell, the DOM model for the button property is much simpler and arguably more useful than the Internet Explorer model since multi-button mouse usage is rare. It’s typical to normalize the models to the DOM way since all browsers except Internet Explorer 8 and earlier implement it natively. The mapping of primary, middle, and secondary buttons is fairly straightforward; all of the other Internet Explorer options will translate into the pressing of one of the buttons, giving precedence to the primary button in all instances. So if Internet Explorer returns either 5 or 7, this converts to 0 in the DOM model.

Since capability detection alone can’t be used to determine the difference (since both have a button property), you must use another method. Browsers that support the DOM version of mouse events can be detected using the hasFeature() method, so a normalizing getButton() method on EventUtil can be written as follows:



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.