【问题标题】:Custom tags in xhtml specifying namespacexhtml中的自定义标签指定命名空间
【发布时间】:2011-06-29 03:27:25
【问题描述】:

我们在很多地方都看到,每当导入跨站点小部件时,它都会附带一个带有特定命名空间的自定义标签。我的问题是关于如何在 JavaScript 中声明、使用和修改它。

例如,说 Google 的 +1 按钮。导入基本上是,你导入一个javascript,然后一个标签<g:plusone></g:plusone>g 作为命名空间。

我看到了他们的源代码 https://apis.google.com/js/plusone.js,发现很难搜索他们如何在 javaScript 中定义命名空间并导入它。

基本上我想做三个功能。

  1. 能够定义一个小部件标签<x:y></x:y> 并使用javascript 将其解析为一些动态html。
  2. 此 html 内容将包含动态内容、动画和 ajax 调用,这些将由我将导入的单个 javascript 处理。
  3. 能够在一个页面上导入多个小部件,一切都相互依赖。即,如果我在一个地方更新,其他地方也会更新。

【问题讨论】:

  • 我一直认为在<ns:tagname></ns:tagname>这样的结构中:ns是我们标签的命名空间,tagname是标签名本身。请澄清一下。
  • 对不起..我会修改问题..
  • 是什么阻止您在代码中只使用“x:y”?
  • 没有什么可以阻止的。我的问题是如何在 JS 中声明命名空间,像在许多跨站点小部件中那样有效地访问这些元素。

标签: javascript xhtml namespaces widget


【解决方案1】:

Google 为他们的 javascript 命名空间,但我认为这与 xml 标签无关

其实我不久前刚刚看到这篇文章: http://www.zachleat.com/web/selecting-xml-with-javascript/ 并使用莎丽莎: http://dev.abiss.gr/sarissa/

您可以定义自己的 xml 标记并使用 javascript 定位它来修改内容。此外,还有 Taconite http://jquery.malsup.com/taconite/ 与 Sarissa 结合可能会给您想要的东西。

就 javascript 的命名空间而言,您只需要一个函数或对象作为作用域。

var x = {
    y: function (){}
};

在这个例子中,y() 被命名为 x,所以 x.y()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-22
    • 1970-01-01
    • 2021-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-09
    相关资源
    最近更新 更多