Ich (und ungefähr eine Million andere) haben einen Fehler in IE11 gefunden (nicht sicher, ob andere Versionen denselben Fehler haben). Wenn Sie ein HTML5-Audio-Tag erstellen, meldet der Browser " Ungültige Quelle "egal was. Ich habe jede Kombination ausprobiert, die mir ohne Erfolg einfällt. Bisher: Ändern der HTML-End-Tags von selbstschließend auf explizit Ändern des Dateinamens, um alle ungeraden Zeichen zu entfernen Ändern des Audio-Unterformats auf alle möglichen Einstellungen Hinzufügen eines expliziten URI ("http: // ... ") Deaktivierung aller Plugins (es gab die Plugins auf Lager) Probieren jedes mögliche Audioformat aus Definieren des MIME-Typs Ändern der Parameter des Audio-Tags. Die IIS-Einstellungen wurden so geändert, dass sie die MIME-Typen enthalten.IE-Fehler Ungültige Quelle HTML5-Audio - Problemumgehung
Überprüfung der "Connect" -Website von Microsoft - (sie machen die Behauptung, dass es nicht reproduzierbar ist, aber Hunderttausende von Google-Ergebnissen suggerieren etwas anderes).
Ist das überhaupt nicht möglich? ALLE anderen neuesten & größten Browser habe ich versucht zu arbeiten (FireFox, Opera, Safari, Chrome) Ich bin am Ende des Witzes - keine Lösungen funktionieren.
Hier ist der Code:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="AudioPopupPlayer.aspx.vb" Inherits="AudioPopupPlayer" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<div style="padding-top: 30px; margin: auto; width: 300px;">
<asp:Literal ID="litVoiceOver" runat="server"></asp:Literal></div>
</body>
</html>
-Code hinter:
Partial Class AudioPopupPlayer
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim VoiceOverFileName As String = Request.QueryString("vo")
If VoiceOverFileName.Length > 0 Then
Dim root As String = HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Authority) + ResolveUrl("~/")
Dim audiosource As String = "<audio id=""VoiceOver"" autoplay=""autoplay"" preload=""preload"" controls=""controls""><source src=""" & root & "audio/" & VoiceOverFileName & ".ogg"" type=""audio/ogg"" ></source><source src=""" & root & "audio/" & VoiceOverFileName & ".mp3"" type=""audio/mpeg"" ></source><source src=""" & root & "audio/" & VoiceOverFileName & ".wav"" type=""audio/wav"" ></source></audio>"
Me.litVoiceOver.Text = audiosource
End If
End Sub
End Class
Und schließlich ein Screenshot (in IE11) zeigt, dass der HTML perfekt gemacht wird, aber ich bekomme immer noch die gefürchteten " Ungültige Quelle "Nachricht (Hinweis: Kopieren und Einfügen der Verknüpfung bewirkt, dass die Audiodatei wiedergegeben wird - gehen Sie Figur).
Ein weiterer Hinweis, ich habe eine statische HTML-Seite erstellt und erhalten das gleiche Ergebnis, so ist es nicht, dass es dynamisch erstellt wird. Ich suche nur nach einem Browser-Hack, damit ich mich nicht mit Flash beschäftigen muss. – MC9000
Ich habe das gleiche Problem und bin darüber hinaus frustriert. Ich habe auch alles versucht, was jeder empfohlen hat. Kein Würfel. Die Tatsache, dass fast niemand auf SO viel zu sagen hat, ist kein gutes Zeichen ... –
Update: In meinem Fall stellte sich heraus, dass IE11 die Tatsache nicht mochte, dass ich src URLs mit einem Abfrageparameter am Ende spezifizierte. Ich habe es geändert, um den Parameter über Header zu übergeben, und es funktioniert jetzt wirklich gut. –