Dart jQueryUI和jQueryUI触摸冲压don';不要使用聚合物。省道
我正在使用jQueryUI和jQueryUI touch punch与Polymer.Dart开发一个小型Dart应用程序。当我不使用聚合物飞镖时,一切都很好。但对于Polymer.dart,出现了几个问题。这是我的密码 index.htmlDart jQueryUI和jQueryUI触摸冲压don';不要使用聚合物。省道,dart,dart-polymer,dart-js-interop,Dart,Dart Polymer,Dart Js Interop,我正在使用jQueryUI和jQueryUI touch punch与Polymer.Dart开发一个小型Dart应用程序。当我不使用聚合物飞镖时,一切都很好。但对于Polymer.dart,出现了几个问题。这是我的密码 index.html 带聚合物的Dart和jquery ui window.jQuery | | document.write(“”) window.jQuery.ui | | document.write(“”) 出口“包装:聚合物/初始省道”; 带聚合物的Dart和jqu
带聚合物的Dart和jquery ui
window.jQuery | | document.write(“”)
window.jQuery.ui | | document.write(“”)
出口“包装:聚合物/初始省道”;
带聚合物的Dart和jquery ui
Dart的世界你好
main_component.html
开放式JSVer
开放式飞镖
你好,世界1!
btn1
btn2
btn3
btn4
btn5
你好,世界2!
btn1
btn2
btn3
btn4
btn5
js/js_main.js
$(函数(){
//这个JS文件中的代码完全不起作用。。。
//但是JS控制台中没有错误消息。。。
//btn1配置
$('#btn1')。单击(函数(){
$('msg1')。对话框('open');
} );
//msg1配置
$('#msg1')。对话框({
自动打开:错误,
按钮:{
“OK”:函数(){
$(this.dialog('close');
}
},
标题:“对话1”,
可调整大小:false,
莫代尔:错,
节目:"折叠",,
隐藏:“喘息”
});
//btn2和msg2配置在Dart端实现。
} );
主零件。省道
import'包装:polymer/polymer.dart';
将“dart:js”导入为js;
@CustomTag('main-component')
类MainComponent扩展了聚合关系{
MainComponent.created():super.created(){
//构造器。。。
}
@凌驾
附页(){
super.attached();
//btn2配置
js.context.callMethod(r'$',[$['btn2']]
..callMethod('单击',[
([arg]){
js.context.callMethod(r'$',[$['msg2']]
..调用方法('dialog',['open']);
}
]);
//msg2配置
js.JsObject options=new js.JsObject(js.context['Object']);
选项['autoOpen']=false;
选项['buttons']=newjs.JsObject(js.context['Object']);
选项['buttons']['OK']=([arg]){
js.context.callMethod(r'$',[$['msg2']]
..调用方法('dialog',['close']);
};
选项['title']=“Dialog2”;
选项['modal']=false;
选项['show']='fold';
选项['hide']='puff';
js.context.callMethod(r'$',[$['msg2']]
..调用方法('dialog',[options]);
}
}
问题是
感谢您阅读到最后:)您的jQuery元素选择代码
$('#msg')
,$('#btnx')
在shadowDOM中找不到任何元素。可能还有其他问题,但这个问题很明显。我明白了。这是否意味着无法从JS访问ShadowDOM中的元素?事实并非如此,您实际上可以从JS访问ShadowDOM,但jQuery默认情况下无法访问。问题是在不同的浏览器上(本机实现/polyfill)可能会有所不同。请参阅。@AlexandreArdhuin的解决方案可能是一种更好的方法。选择Dart中的元素并将结果传递给JavaScript。