【发布时间】:2011-03-01 15:47:15
【问题描述】:
目前在尝试让 YUI 工具提示显示在之前创建的 YUI 面板上时遇到问题。问题是面板无法注册到覆盖管理器,因为它需要更改和测试大量代码以延长硬期限。 使其工作的唯一方法是在显示面板之后设置工具提示。问题是附加另一个函数调用必须进行大量的代码更改。我的问题是我希望我可以使用事件处理来使用"showEvent",但我似乎无法让它工作(我为字数道歉):
var panel_obj = new YAHOO.widget.Panel('someID', {
width: "700px",
height: "500px",
close: true,
draggable: false,
modal: true,
constraintoviewport: true,
visible: false,
fixedcenter: true
});
panel_obj.render();
var tooltip_name = 'newTooltip1';
var element_id = 'htmlElementIDToBecomeTooltip';
function createTooltip() {
window[tooltip_name] = new YAHOO.widget.Tooltip(tooltip_name, {
context: element_id,
xyoffset: [15, -15],
zIndex: 999
});
}
function successfulScenario() {
panel_obj.show();
createTooltip();
}
function failedScenario1() {
YAHOO.util.Event.addListener(
'someID',
"showEvent",
createTooltip
);
}
function failedScenario2() {
createTooltip();
panel_obj.show();
}
我似乎让它工作的唯一方法是运行类似successfulScenario() 的东西。我来自 jQuery 背景,所以我还在学习 YUI。我希望能够扩展(子类)YAHOO.widget.Panel 的show() 函数来调用createTooltip,但我不是一个大师,或者我可能需要更改一个非常大的代码库才能做到这一点.
【问题讨论】:
标签: javascript events yui tooltip panel