swiffy输入文本域解决方法

时间:2014-05-25 10:19:21

标签: javascript jquery actionscript-3

我是这个论坛的菜鸟和javascript的菜鸟,但我知道as3的公平份额。

所以swiffy并不支持输入文本字段。我认为解决方法是从swiffy对象调用javascript函数(我可以使用callExternalInterface),它将HTML输入文本字段加载到我的swiffy对象上方的iFrame或更高z-index层上的div确切地说它看起来像是它的所有部分,但遗憾的是我的javascript知识还处于起步阶段。

我一直在努力,做研究,尝试不同的事情,现在五六个小时,我尝试的一切都不起作用。我正在加载一个定义文本字段的外部HTML文件,到目前为止我已经有了一些东西需要加载,但它很奇怪,虽然它现在显示在正确的位置,但它&# 39;休息'网站的布局,并显示在一个小盒子里,告诉我我需要一个插件来做到这一点。

这就是我现在所拥有的,它是可怜的,甚至根本不起作用..(load_email是从我的flash文件调用的javascript函数)

function load_email(){
document.getElementById("swiffycontainer").innerHTML='<object type="type/html" id="email.html" </object>'
placeDiv();
console.info("email0");
}



function placeDiv(x_pos, y_pos) {
  var d = document.getElementById('email.html');
  console.info("boo");
  d.style.position = "relative";
  d.style.left = 292+'px';
  d.style.top = 380+'px';
  d.style.zIndex =2000;
  console.info("boo2");
}

可悲,不是。

请帮帮忙?

回答我自己的问题:

事实证明,这比我想要的要简单得多。

我在巴基斯坦的朋友通过Skype帮助我,这就是如何通过javascript将输入的文本字段输入到你的swiffy中,从那里应该可以拼凑一些电子邮件:

您不需要加载任何外部html文件,只需删除该部分即可。然后将load_email函数更改为以下内容:

function load_email() {
    var inputFieldName = document.createElement("input");
        inputFieldName.type="text";
        inputFieldName.style.position = "absolute";
        inputFieldName.style.left = "292px";
        inputFieldName.style.top = "370px";
        inputFieldName.style.zIndex = 2000;
        swiffycontainer.appendChild(inputFieldName);
}

的Bam。很高兴。

1 个答案:

答案 0 :(得分:-1)

Thanx到你的anwser并使用你发布的代码我在actionscript 2中为flash文件做了另一个工作演示,在swiffy和javascript(in和out)之间交换数据。

以下是步骤:

1)关键是使用 javascript 中的这一行将值发送到swiffy对象:

  

function sendValue(){               myvalue的= inputFieldName.value;               stage.setFlashVars( 'myMessageFromTextfield =' + myvalue的);           }

2)然后,在fla文件中,在 actionscript2 中,获取值:

  

getValue = function(){       if(_level0.myMessageFromTextfield ==“undefined”|| _level0.myMessageFromTextfield == undefined){           this.cat.animCat.myText.text =“”;       } else {           this.cat.animCat.myText.text = _level0.myMessageFromTextfield;           returnButton._visible = true;       }   }

3)我们需要不断监控te数据何时出现,因此请使用setInterval:

  

myInterval = setInterval(this,“getValue”,100);

4)现在,要将值发送回html文件,我们使用附带数据的getURL:

  

returnButton.onRelease = function(){       getURL(“Javascript:showMessage('”_ _ level0.myMessageFromTextfield +“表示猫');”);   }

5)最后,再次在html中的 javascript 中,我们使用参数执行该函数:

  

function showMessage(message){               警报(消息);           }

它在IE,Firefox,Chrome,safari(ios)中完美运行。

现在我们可以在ipad或iphone中发送文字了。

我在下一个链接中附加了源文件:

https://onedrive.live.com/redir?resid=E64343A7ADE7D670!1401&authkey=!AO86aUEdyZRqQN4&ithint=file%2czip