首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >允许扩展网站功能的技术

允许扩展网站功能的技术
EN

Stack Overflow用户
提问于 2015-09-15 16:51:47
回答 1查看 70关注 0票数 0

比方说,我想扩展网站功能,但我不确定我在寻找什么样的解决方案。这不是我的网站,所以很明显我不能使用原始代码或数据库。

我首先想到的是只适用于html代码的简单操作,比如使用不同的列进行排序。在这种情况下,我想我应该考虑创建浏览器插件,对吧?

但是,如果我想要存储其他数据,然后将其显示在我的配置文件中,该怎么办?我不确定什么样的解决方案允许我在网站中显示我的html代码,然后例如将数据发送到我的数据库。不要误会我-我知道如何在ASP.NET或使用Django创建网站,但当我想扩展不属于我的网站时,我不知道我在寻找什么技术。

EN

回答 1

Stack Overflow用户

发布于 2015-09-15 17:17:43

听起来你是在问来自JavaScript的客户端功能。有许多库可以让您以编程方式更改HTML功能,例如表列排序和用户输入数据收集。

流行的框架和库包括jQuery、angular、react、mithril和较新的框架和库,如vuejs和magjs。

有些需要特殊的模板语法或与html混合的行为,而其他如magjs则100%分离html和js。

下面是一个表排序的MagJS示例:

JS:

代码语言:javascript
运行
复制
var table = {}

table.controller = function(props) {
  this.list = [{
    name: "John",
    age: 21
  }, {
    name: "Mary",
    age: 25
  }, {
    name: "Bob",
    age: 47
  }]

}

table.view = function(state, props) {
  state.table = sorts(state.list)
}

function sorts(list) {

  return {

    _onclick: function(e) {

      var prop = e.target.getAttribute("data-sort-by")

      if (prop) {

        var first = list[0]

        list.sort(function(a, b) {
          return a[prop] > b[prop] ? 1 : a[prop] < b[prop] ? -1 : 0
        })

        if (first === list[0]) list.reverse()

      }
    }
  }
}

mag.module("sortable", table)

HTML:

代码语言:javascript
运行
复制
<div id="sortable">
  <table>
    <tr>
      <th data-sort-by="name">Name</th>
      <th data-sort-by="age">Age</th>
    </tr>
    <tr class="list">
      <td class="name"></td>
      <td class="age"></td>
    </tr>
  </table>
</div>

以下是指向工作示例的链接:http://jsbin.com/raqeluluxe/1/edit?html,js,output

希望这能有所帮助!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32581696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档