views:

702

answers:

1

Is there a way to set focus to the embed HTML element using JavaScript? Test case: embedded YouTube videos on a page.

I have no control over the embedded Flash element. So, is there a way to set focus on it by using only JavaScript?

I read somewhere that calling the element.focus() method works only in IE. I need a browser-independent way that works in Chrome/Firefox.

Thanks!

A: 

I've tried to do this too, and ended up to a nice solution using jquery:

var gotoflash=jQuery("#flash_file").offset().top;jQuery("html:not(:animated),body:not(:animated)").animate({ scrollTop: gotoflash}, 1000);

where: <*div id="flash_file"> flash object code here <*/div>

Manolis
I tried this. But as far as I can comprehend, this is meant to scroll the page to the flash object. I actually want to set focus to the element.So that, for eg., in YouTube, after setting focus to the element, I can use the keyboard shortcuts like "space" for playing/pausing the video
ankit
hm..i understood... try this,it works: <body onload="document.OBJECTID.focus();"> ,where OBJECTID is: <object ... id="OBJECTID" name="OBJECTID"><embed .... id="OBJECTID" name="OBJECTID">...
Manolis