Sharepoint 2010 Web部件中的Mediaelement错误(Sharepoint 2010)

Sharepoint 2010 Web部件中的Mediaelement错误(Sharepoint 2010),sharepoint-2010,media-player,web-parts,mediaelement.js,Sharepoint 2010,Media Player,Web Parts,Mediaelement.js,我从mediaelement-and-player.min.js收到一个错误: 行:44 错误:对方法或属性访问的意外调用。 我正在尝试在Sharepoint 2010的Web部件中使用播放器。我正在尝试的例子是YouTube的例子 以下是我从Web部件中剪下的代码片段 jQuery由SP2010中的母版页加载 加载插件: this.Controls.Add(new CssRegistration() { Name = "/_layouts/Script/mediaelement/mediael

我从mediaelement-and-player.min.js收到一个错误:

行:44 错误:对方法或属性访问的意外调用。

我正在尝试在Sharepoint 2010的Web部件中使用播放器。我正在尝试的例子是YouTube的例子

以下是我从Web部件中剪下的代码片段

jQuery由SP2010中的母版页加载

加载插件:

this.Controls.Add(new CssRegistration() { Name = "/_layouts/Script/mediaelement/mediaelementplayer.css", EnableCssTheming = true });

this.Controls.Add(new ScriptLink { Name = "/_layouts/Script/mediaelement/mediaelement-and-player.min.js", Language = "javascript", Localizable = false, LoadAfterUI = true });
this.Controls.Add(new ScriptLink { Name = "/_layouts/Script/video.js", Language = "javascript", Localizable = false, LoadAfterUI = true });
writer.Write("<video width='320' height='240' id='player1' >");    
writer.Write("  <!-- Pseudo HTML5 -->");
writer.Write("  <source src='" + VideoPickerUrl + "' type='video/youtube' />");
writer.Write("</video>");
writer.Write("<span id='player1-mode'></span>");
$("video").mediaelementplayer({
    enablePluginDebug: true,
    pluginPath: '/_layouts/Script/mediaelement/',
    flashName: 'flashmediaelement.swf',
    success: function (media, node, player) {
    $('#' + node.id + '-mode').html('mode: ' + media.pluginType);
    },
    error: function () {
    $('#' + node.id + '-mode').html('Noe er feil!');
    }
});
HTML代码:

this.Controls.Add(new CssRegistration() { Name = "/_layouts/Script/mediaelement/mediaelementplayer.css", EnableCssTheming = true });

this.Controls.Add(new ScriptLink { Name = "/_layouts/Script/mediaelement/mediaelement-and-player.min.js", Language = "javascript", Localizable = false, LoadAfterUI = true });
this.Controls.Add(new ScriptLink { Name = "/_layouts/Script/video.js", Language = "javascript", Localizable = false, LoadAfterUI = true });
writer.Write("<video width='320' height='240' id='player1' >");    
writer.Write("  <!-- Pseudo HTML5 -->");
writer.Write("  <source src='" + VideoPickerUrl + "' type='video/youtube' />");
writer.Write("</video>");
writer.Write("<span id='player1-mode'></span>");
$("video").mediaelementplayer({
    enablePluginDebug: true,
    pluginPath: '/_layouts/Script/mediaelement/',
    flashName: 'flashmediaelement.swf',
    success: function (media, node, player) {
    $('#' + node.id + '-mode').html('mode: ' + media.pluginType);
    },
    error: function () {
    $('#' + node.id + '-mode').html('Noe er feil!');
    }
});
编辑:

this.Controls.Add(new CssRegistration() { Name = "/_layouts/Script/mediaelement/mediaelementplayer.css", EnableCssTheming = true });

this.Controls.Add(new ScriptLink { Name = "/_layouts/Script/mediaelement/mediaelement-and-player.min.js", Language = "javascript", Localizable = false, LoadAfterUI = true });
this.Controls.Add(new ScriptLink { Name = "/_layouts/Script/video.js", Language = "javascript", Localizable = false, LoadAfterUI = true });
writer.Write("<video width='320' height='240' id='player1' >");    
writer.Write("  <!-- Pseudo HTML5 -->");
writer.Write("  <source src='" + VideoPickerUrl + "' type='video/youtube' />");
writer.Write("</video>");
writer.Write("<span id='player1-mode'></span>");
$("video").mediaelementplayer({
    enablePluginDebug: true,
    pluginPath: '/_layouts/Script/mediaelement/',
    flashName: 'flashmediaelement.swf',
    success: function (media, node, player) {
    $('#' + node.id + '-mode').html('mode: ' + media.pluginType);
    },
    error: function () {
    $('#' + node.id + '-mode').html('Noe er feil!');
    }
});
在尝试NOT.min js文件时,我在第970行也遇到了错误。代码在if语句处停止:

for (i=0; i<mediaFiles.length; i++) {
// normal check
    if (htmlMediaElement.canPlayType(mediaFiles[i].type).replace(/no/, '') !== '' 
    // special case for Mac/Safari 5.0.3 which answers '' to canPlayType('audio/mp3') but 'maybe' to canPlayType('audio/mpeg')
       || htmlMediaElement.canPlayType(mediaFiles[i].type.replace(/mp3/,'mpeg')).replace(/no/, '') !== '') {
           result.method = 'native';
           result.url = mediaFiles[i].url;
           break;
       }
}

for(i=0;i您是否收到与min.js版本相同的错误?诀窍是找出引发错误的是htmlMediaElement还是mediaFiles[i]。我会检查它们是否确实存在。逐步检查javascript。