在自定义聚合物元素中使用 jquery toggle()
Using jquery toggle() inside a custom polymer element
我想使用一个按钮在单击时切换单词,如下所示:
function toggle() {
$("#secret").toggle();
}
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body>
<button onClick="toggle()"> toggle </button>
<p id="secret" style="display: none"> secret </p>
</body>
这没有问题,但是当在自定义 Polymer 元素中使用代码时,单词只会显示,而不会再次隐藏。
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//www.polymer-project.org/components/polymer/polymer.js"></script>
<polymer-element name="test-element">
<template>
<button on-tap="{{toggle}}"> toggle </button>
<p id="secret" style="display: none"> secret </p>
</template>
<script>
Polymer({
toggle: function() {
$(this.$.secret).toggle();
}
});
</script>
</polymer-element>
<test-element></test-element>
但是,使用show()
和hide()
有效:
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//www.polymer-project.org/components/polymer/polymer.js"></script>
<polymer-element name="test-element">
<template>
<button on-tap="{{toggle}}"> Toggle </button>
<p id="secret"> secret </p>
</template>
<script>
Polymer({
toggle: function() {
if ($(this.$.secret).css("display") == "block") {
$(this.$.secret).hide();
} else {
$(this.$.secret).show();
}
}
});
</script>
</polymer-element>
<test-element></test-element>
为什么toggle()
功能本身工作,但当show()
和hide()
工作时,在自定义聚合物元件内不起作用?
我认为你不必使用jQuery进行"切换",你可以用更聚合的方式做到这一点:
<script src="//www.polymer-project.org/components/polymer/polymer.js"></script>
<polymer-element name="test-element">
<template>
<button on-tap="{{toggle}}">Toggle</button>
<p id="secret" hidden?="{{!showingSecret}}">secret</p>
</template>
<script>
Polymer({
toggle: function() {
this.showingSecret = !this.showingSecret;
}
});
</script>
</polymer-element>
<test-element></test-element>
我不认为jquery在聚合物元素中工作。 如果是这样,也许不能完全工作。 但它很容易修复。 你可以使用 https://www.polymer-project.org/docs/elements/core-elements.html#core-collapse
相关文章:
- JQuery Toggle()
- jQuery Toggle不适用于本地和我的网站,但适用于jsFiddle
- jQuery toggle()函数工作不正常
- jQuery Toggle——我做错了什么
- Jquery toggle()函数不适用于hoverwords()Sliding Letters扩展
- 为什么 jquery toggle() 方法在页面不刷新的情况下无法正常工作
- jQuery.toggle - 在交替单击时执行两个或多个处理程序
- 在自定义聚合物元素中使用 jquery toggle()
- JQuery toggle() 方法不影响其他重复元素
- Jquery .toggle 只显示不隐藏在 Drupal 视图中
- 第二个 jQuery toggle() 文件破坏了第一个 toggle() 方法
- jQuery toggle() issue
- Jquery toggle命令意外触发
- jQuery Toggle-应仅在单击标题时关闭
- 如何使用JQuery toggle和AJAX调用PHP脚本
- jQuery toggle('slide') 切换可见性状态,但没有幻灯片效果
- JQuery Toggle可在第一次单击时工作,但不能再次单击(如预期)
- jQuery toggle()函数.我想对更好的实践提出一些批评或建议
- jQuery .toggle() child issue
- jQuery .toggle() + addClass()似乎没有达到预期的效果