Bug Tracker

Opened 12 years ago

Closed 12 years ago

#10374 closed feature (wontfix)

$('#audio').play() should use first compatible source tag

Reported by: anonymous Owned by:
Priority: low Milestone: None
Component: event Version: 1.6.4
Keywords: Cc:
Blocked by: Blocking:

Description

When using the HTML5 <audio> tag such as this:

<audio id="sound" preload="auto">
  <source src="sound.ogg" type="audio/ogg">
  <source src="sound.wav" type="audio/wav">
</audio>

I expected $('#sound').play() to trigger playing, but it returned no such method. Instead I have to specify $('#sound')[0].play() or $('#sound').[1].play(). It would be great if jQuery supported $('#sound').play() to play the first source type compatible with the current browser, as well as the other methods.

Change History (4)

comment:1 Changed 12 years ago by dmethvin

To do that we'd need to add a jQuery method name for each DOM element method name. And of course that method would do nothing for non-media elements so it doesn't seem like it would be worth the extra bytes it would take. You could write a small plugin to do it though.

comment:2 Changed 12 years ago by Rick Waldron

You could use Popcorn.js

Version 0, edited 12 years ago by Rick Waldron (next)

comment:3 Changed 12 years ago by Rick Waldron

This will also do what you want...

http://jsfiddle.net/rwaldron/nNvgW/

comment:4 Changed 12 years ago by Rick Waldron

Component: unfiledevent
Priority: undecidedlow
Resolution: wontfix
Status: newclosed
Note: See TracTickets for help on using tickets.