【发布时间】:2010-12-02 03:49:41
【问题描述】:
我有一个带有嵌入式 Flash 电影的 HTML 页面,它有一个按钮。 Flash 中的这个按钮调用 lnkEmail 的点击事件。它应该停止实际导航到新页面,但是 event.preventDefault();并且从事件处理程序返回 false 似乎对我不起作用。谁能提供见解?
以下示例在 Chrome 中运行,但在 IE 7 和 FF 中失败。在那些浏览器中,它重定向到以 Object [object] 作为正文的空白页面,而在 FF 中,将 url 设置为我在 Flash 电影中执行的 javascript 代码。 (即:“javascript:jQuery('#lnkEmail').click();”)
以下是 Flash ActionScript 中的代码。
cmdDemo.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(event:MouseEvent):void {
navigateToURL(
new URLRequest(
"javascript:jQuery('#lnkEmail').click();"
),
"_self"
);
}
在包含的 HTML 页面中有以下脚本和元素:
<script type="text/javascript">
$(function(){
$.nyroModalSettings({
debug: true
});
$('#lnkEmail').click(function(event) {
event.preventDefault();
$.nyroModalManual({
url: 'demoRequest.aspx?Type=4'
});
return false;
});
});
</script>
稍后在同一个文件中:
<div id="box_stage_home">
<script type="text/javascript">
$(document).ready(function() {
$('#HomeAnimation').flash({
swf: 'Flash/index_page.swf',
height: 288,
width: 686,
wmode: 'transparent'
});
});
</script>
<div id="HomeAnimation"><!--IE 6.0--></div>
<a href="emailSend.aspx?Type=4" id="lnkEmail"> </a>
</div>
【问题讨论】:
-
忘了提到这在 Chrome 中有效。但在 IE 7 和 FF 中,它重定向到一个带有 Object [object] 和一个 url 作为 javascript:jQuery('#lnkEmail').click();. 的页面
-
欢迎来到 Stack Overflow!您可以通过单击问题右下角的
edit链接来编辑您的原始帖子 - 无需对此类内容发表评论。
标签: javascript jquery flash nyromodal preventdefault