diff options
Diffstat (limited to 'javascript/duktape/Element.bnd')
-rw-r--r-- | javascript/duktape/Element.bnd | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/javascript/duktape/Element.bnd b/javascript/duktape/Element.bnd index a5ac8b94f..d34e8c1eb 100644 --- a/javascript/duktape/Element.bnd +++ b/javascript/duktape/Element.bnd @@ -318,6 +318,28 @@ method Element::setAttribute() return 0; %} +method Element::hasAttribute() +%{ + dom_string *attr_name = NULL; + dom_exception exc; + duk_size_t slen; + bool res; + + const char *s = duk_safe_to_lstring(ctx, 0, &slen); + exc = dom_string_create((const uint8_t *)s, slen, &attr_name); + duk_pop(ctx); + + exc = dom_element_has_attribute(priv->parent.node, + attr_name, &res); + dom_string_unref(attr_name); + if (exc != DOM_NO_ERR) { + return 0; + } + + duk_push_boolean(ctx, res); + return 1; +%} + getter Element::className () %{ dom_string *classstr = NULL; |