Front-end Tutorials

Front-end Tutorials

HTMLCSSSassJavaScriptReactJS
CMS Tutorials

CMS Tutorials

WordPress
Tutorials expand

HTML Basic

HTML Reference

HTML oncanplay Attribute

Posted in HTML Tutorial
Updated on Jan 26, 2024
By Mari Selvan
👁️ 13 - Views
⏳ 4 mins
💬 1 Comment
HTML oncanplay Attribute

Photo Credit to CodeToFun

🙋 Introduction

The oncanplay attribute in HTML is an event handler attribute associated with audio and video elements.

It is used to specify a JavaScript function to be executed when media (audio or video) can start playing without having to stop for buffering.

🎯 Purpose of oncanplay

The primary purpose of the oncanplay attribute is to provide a way to execute custom JavaScript code when the media is ready to play.

This event is triggered when the browser determines that there's enough media data buffered to start playback without interruptions.

💎 Values

The oncanplay attribute accepts a JavaScript function as its value. This function will be executed when the canplay event occurs. Here's a basic example:

oncanplay.html
Copied
Copy To Clipboard
<audio controls oncanplay="myFunction()">
  <source src="audio.mp3" type="audio/mp3">
  Your browser does not support the audio tag.
</audio>

<script>
  function myFunction() {
    alert("Media can start playing!");
  }
</script>

🧠 How it Works

In this example, the oncanplay attribute is set to trigger the myFunction() JavaScript function when the media is ready to play.

🔄 Dynamic Values with JavaScript

You can dynamically set the oncanplay attribute using JavaScript.

This can be useful when you want to change the behavior of the event handler based on specific conditions or user interactions. Here's an example:

oncanplay.html
Copied
Copy To Clipboard
<script>
  // Dynamically set oncanplay for a media element
  document.getElementById("myMedia").oncanplay = function() {
    console.log("Media can start playing dynamically!");
  };
</script>

🧠 How it Works

In this script, the oncanplay attribute is set to an anonymous function for a media element with the id "myMedia." This function will be executed when the canplay event occurs.

🏆 Best Practices

  • Use the oncanplay attribute to execute custom JavaScript code when media is ready to play.
  • Consider dynamic assignment of the attribute when you need to change the behavior based on specific conditions.
  • Test your code across different browsers to ensure consistent behavior.

🎉 Conclusion

The oncanplay attribute is a valuable tool for enhancing the functionality of audio and video elements in HTML.

By using this attribute, you can execute custom code precisely when the media is ready to play, providing a more interactive and responsive user experience.

👨‍💻 Join our Community:

To get interesting news and instant updates on Front-End, Back-End, CMS and other Frameworks. Please Join the Telegram Channel:

Author

author
👋 Hey, I'm Mari Selvan

For over eight years, I worked as a full-stack web developer. Now, I have chosen my profession as a full-time blogger at codetofun.com.

Buy me a coffee to make codetofun.com free for everyone.

Buy me a Coffee

Share Your Findings to All

Subscribe
Notify of
guest
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Mari Selvan
Mari Selvan
3 months ago

If you have any doubts regarding this article (HTML oncanplay Attribute), please comment here. I will help you immediately.

We make use of cookies to improve our user experience. By using this website, you agree with our Cookies Policy
AgreeCookie Policy