Safari浏览器将不会让我在Flash格式键入我在、会让、将不、浏览器

2023-09-08 14:31:58 作者:学校FUCK了莪们の青春

我做了一个Flash网站有一个接触的形式,它完美的作品在Firefox,IE和Chrome在我的电脑。然而,在Safari中我似乎无法在任何文本框输入;而在Android上,我sowehow只能输入大写字母(基本上CAPSLOCK是,它不会让我改变为小写)。

I made a flash website with a contact form, which works perfectly in FireFox, IE and Chrome on my pc. However, in Safari I can't seem to type in any textfield; and on Android, I sowehow can only type capital letters (basically capslock is on and it won't let me change to lower case).

我怀疑问题在于完全在Flash中,因为发送电子邮件确实工作得很好。搜索在这里或在谷歌没有得到我任何有关。

I'm suspecting the problem lies entirely within Flash, since sending an email does work just fine. Searching here or on Google doesn't get me to anything related.

任何提示?

这是我的code:

FormScript.as(这是从我的主。作为文件称为外部。至于文件)的

//***All imports, vars, etc***

function submit(e:MouseEvent):void {

    //Check to see if any of the fields are empty       
        if(yourName.text == "" || fromEmail.text == "" ||
            yourSubject.text == "" ||yourMsg.text == "" ) {
            valid.text = "All fields must be filled";
        }

    //Check if you're using a valid email address       
        else if(!checkEmail(fromEmail.text)) {
            valid.text = "Please fill in an existing email";
        } 

        else { 
            valid.text = "Verzenden.."; 
            var emailData:String = 
            "name=" + yourName.text +
            "&from=" + fromEmail.text +
            "&subject=" + yourSubject.text +
            "&msg=" + yourMsg.text;

            var urlVars:URLVariables = new URLVariables(emailData);
            urlVars.dataFormat = URLLoaderDataFormat.TEXT;
            urlRequest.data = urlVars; varLoad.load( urlRequest );
            varLoad.addEventListener(Event.COMPLETE, thankYou );
        }
    }
    function reset(e:MouseEvent):void {
        init(); //call the initial clear function
    }
    function checkEmail(s:String):Boolean {
        //This tests for correct email address
        var p:RegExp = /(\w|[_.\-])+@((\w|-)+\.)+\w{2,4}+/;
        var r:Object = p.exec(s);
        if( r == null ) {
            return false;
        }
        return true;
    }   
    function thankYou(e:Event):void { 
        var loader:URLLoader = URLLoader(e.target); 
        var sent = new URLVariables(loader.data).sentStatus;
        if( sent == "yes" ) {
            valid.text = "Thanks for your email!"; timer = new Timer(500);
            timer.addEventListener(TimerEvent.TIMER, msgSent);
            timer.start();
        }
        else {
            valid.text = "Something went wrong, please try again";
        }
    }

    function msgSent(te:TimerEvent):void {
        if(timer.currentCount >= 10) {
        init();
        timer.removeEventListener(TimerEvent.TIMER, msgSent);
    }

邮件处理PHP文件:的

<?php
    $yourName = $_POST['name'];
    $fromEmail = $_POST['from'];
    $yourSubject = $_POST['subject'];
    $yourMsg = $_POST['msg'];

    if( $yourName == true ) {
        $sender = $fromEmail;
        $yourEmail ="myemailaddress@example.com"; // Naturally I put in my own email address here :)
        $ipAddress = $_SERVER['REMOTE_ADDR']; // This gets the user's ip Address

        $emailMsg = "Van: $sender\r\n" .
                    "Naam: $yourName\r" .
                    "Subject: my site - $yourSubject\n\n" .
                    "$yourMsg\n\n\n\n" .
                    "------------------------------\r" .
                    "Verstuurd vanaf IP-adres $ipAddress\r" .
                    "X-Mailer: PHP/" . phpversion();
        $return = "From: $sender\r\n";

        if( mail( $yourEmail, "$yourSubject", $emailMsg, $return)) { 
            echo "sentStatus=yes";
        }
        else {
            echo "sentStatus=no";
        }
    }
?>

编辑:

我已成功地对这个解决Android的问题。 Safari浏览器仍然不会让我的类型。

I have managed to resolve the Android issue on this. Safari still won't let me type.

我改变了标题 - 的原题:在Android Flash格式让我仅键入大写字母/ CAPS,狩猎不会让我输入的所有的的

I changed the title - Original question: "Flash form on Android lets me type only capital letters/CAPS, safari won't let me type at all"

这可能做的伎俩为Android的部分是设置文本框是对 .htmlText 而不是的.text 在AS3 code。

The part that probably did the trick for Android was setting the textfields to be for .htmlText instead of .text in the AS3 code.

推荐答案

我唯一建议,就是看你是否需要更新您的Flash版本。我以前见过,我无法输入Firefox和更新闪存解决这一个问题。

The only thing I would suggest, is to see if you need to update your Flash version. I have seen an issue before where I couldn't type in Firefox and updating Flash resolved it.