最好使用JavaScript还是XQuery
Is it best to use JavaScript or XQuery?
我学到了一些Xquery(基础)
例如:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="application/xquery">
declare sequential function local:set($loc, $evt) {
b:setStyle(b:dom()//body, "background-color", $loc/@value)
};
for $button in b:dom()//input[@type="button"]
return
b:addEventListener($button, "onclick", local:set#2)
</script>
</head>
<body>
<h1>Change the background color</h1>
<input type="button" value="Blue"/>
<input type="button" value="Red"/>
<input type="button" value="Green"/>
<br/>
<input type="button" value="Black"/>
<input type="button" value="White"/>
<input type="button" value="Yellow"/>
</body>
</html>
这会更改单击时的颜色。现在,x-query中的编码与JS相比如何?可以完全使用X-query而不是javascript吗?哪一个能更好地控制元素?
我是在浪费时间学习XQuery吗?我之所以这么问,是因为几乎每个人都只谈论JavaScript。用XQuery代替JS是否可行?它们在浏览器支持方面的比较如何?
使用javascript,您可以类似地执行此操作,如本例所示。
(我不得不说,对我来说,你的测试在代码段编辑器中并不真正起作用)
你应该很容易地识别代码结构,它并没有太大的变化。一个用于设置颜色的函数,一个用于附加带有onclick事件的setColor函数的on函数,以及一个用于获取要设置事件处理程序的项的查询。
function setColor() {
document.body.style.background = this.value;
}
function onLoad() {
var input = document.getElementsByTagName('input'),
i, len, item;
for (i = 0, len = input.length; i < len; i++) {
item = input[i];
if (item.getAttribute('type') === 'button') {
item.addEventListener('click', setColor.bind(item));
}
}
}
window.onload = onLoad;
<h1>Change the background color</h1>
<input type="button" value="Blue" />
<input type="button" value="Red" />
<input type="button" value="Green" />
<br/>
<input type="button" value="Black" />
<input type="button" value="White" />
<input type="button" value="Yellow" />
在JQuery中,它甚至更容易,你可以这样做:
$(function() {
$('input[type=button]').on('click', function(e) {
$(document.body).css('background', e.currentTarget.value);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<h1>Change the background color</h1>
<input type="button" value="Blue" />
<input type="button" value="Red" />
<input type="button" value="Green" />
<br/>
<input type="button" value="Black" />
<input type="button" value="White" />
<input type="button" value="Yellow" />
我认为使用Javascript更有意义。有很多框架,很多人已经尝试了你最有可能尝试的东西,所以如果你陷入困境或有问题,你会有更多的资源来寻找解决问题的方法。
相关文章:
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- 我应该使用Ng提交还是点击表格
- 在javascript中确定输入数字是负数还是正数
- 我应该先学习Angularjs还是Laravel
- 我需要NG-IF/NG-SWITCH还是NG-SHOW&NG-HIDE
- 最好使用JavaScript还是XQuery
- 仅当窗口宽度>940像素,无论是通过页面加载还是调整大小
- 内容脚本是在同一个孤立的世界中运行,还是在不同的孤立世界中运行
- 如何检测我的音频流是:正在播放、暂停还是已完成
- 使用appendChild()动态添加的脚本是按顺序执行还是并行执行
- 是重新呈现整个模板更好,还是使用jquery修改一些值更好
- XQuery 序列等效于 MarkLogic 服务器端 JavaScript
- 我应该总是将模块调用到var中,还是在节点中立即执行
- 是我的第三方JavaScript返回html还是只是一个空对象
- 区分客户端运行的是OSX还是Windows
- 最好检查tagName还是HTMLAnchorElement的instance
- 确定滑动事件是左滑动还是右滑动
- 将数据发布到iframe是同步还是异步
- CORS——它是客户端的东西,服务器端的东西,还是传输级别的东西