Skip to Content

getYoutubeTitle()

Get the title of the Youtube video (or use best fallback possible)

JavaScript February 7, 2021

Usage

JavaScript
nebula.getYoutubeTitle(target)

Parameters

target
(Required) (Object) The event target passed within the Youtube API functions
Default: None

Request or provide clarification »

Examples

JavaScript
function nebulaYoutubeError(e){
    thisVideo.title = nebula.getYoutubeTitle(e.target);
}

Additional Notes

This checks if the undocumented getVideoData() function is available from the Youtube API. Either way it tries to return the most applicable title available. The fallback stack is Youtube title, iframe title attribute, or video ID.

Source File

Located in /assets/js/modules/video.js on line 505.

No Hooks

This function does not have any filters or actions available. Request one?
JavaScript
nebula.getYoutubeTitle = function(target){
    //If getVideoData is available in the API
    if ( target.getVideoData ){
        return target.getVideoData().title;
    }

    //Otherwise use the iframe title attribute (if it exists)
    if ( jQuery(target.getIframe()).attr('title') ){
        return jQuery(target.getIframe()).attr('title').trim();
    }

    //Otherwise use the Youtube ID instead
    let youtubeID = nebula.getYoutubeID(target);
    if ( youtubeID ){
        return youtubeID;
    }

    return false;
};

Override

To override or disable this JavaScript function, simply redeclare it with the exact same function name.

JavaScript
nebula.getYoutubeTitle = function(target){
    //Write your own code here, leave it blank, or return false.
}