HtmlTrackElement
sealed class HtmlTrackElement : HtmlElement, IHtmlTrackElement, IHtmlElement, IElement, INode, IEventTarget, IMarkupFormattable, IParentNode, IChildNode, INonDocumentTypeChildNode, IElementCssInlineStyle
Represents the HTML track element.
using AngleSharp.Dom.Css;
using AngleSharp.Dom.Media;
using AngleSharp.Html;
namespace AngleSharp.Dom.Html
{
internal sealed class HtmlTrackElement : HtmlElement, IHtmlTrackElement, IHtmlElement, IElement, INode, IEventTarget, IMarkupFormattable, IParentNode, IChildNode, INonDocumentTypeChildNode, IElementCssInlineStyle
{
private readonly BoundLocation _src;
private TrackReadyState _ready;
public string Kind {
get {
return GetOwnAttribute(AttributeNames.Kind);
}
set {
SetOwnAttribute(AttributeNames.Kind, value);
}
}
public string Source {
get {
return _src.Href;
}
set {
_src.Href = value;
}
}
public string SourceLanguage {
get {
return GetOwnAttribute(AttributeNames.SrcLang);
}
set {
SetOwnAttribute(AttributeNames.SrcLang, value);
}
}
public string Label {
get {
return GetOwnAttribute(AttributeNames.Label);
}
set {
SetOwnAttribute(AttributeNames.Label, value);
}
}
public bool IsDefault {
get {
return GetOwnAttribute(AttributeNames.Default) != null;
}
set {
SetOwnAttribute(AttributeNames.Default, value ? string.Empty : null);
}
}
public TrackReadyState ReadyState => _ready;
public ITextTrack Track => null;
public HtmlTrackElement(Document owner, string prefix = null)
: base(owner, Tags.Track, prefix, NodeFlags.SelfClosing | NodeFlags.Special)
{
_src = new BoundLocation(this, AttributeNames.Src);
_ready = TrackReadyState.None;
}
}
}