奇妙な微信内蔵ブラウザIOS版とAnroid版
1923 ワード
html 5ページでシミュレーションしてalertという関数を書きました.主にヒントボックスとクリックヒントボックスのコールバック機能を実現しました.関数は以下の通りです.
外部ブラウザやAndroid携帯電話の微信でテストしても正確なコールバック関数fnは可能ですが、IOSでは正確なコールバック関数はできません.おかしいですね.そして一歩一歩問題を探し始め、疑い始めたのは
条件が成立しないで、それからログを作って表示して、結果はundefinedに戻って微信の内部のブラウザの中で、それからまたcallを使って、applyなどの方式はすべてundeinedで、本当に無言で、最後にfnのパラメータを文字列に伝達して過去に依然としてundefinedであることを発見して、本当に人を悩ませて、後でalertが微信に使用されたのかもしれないと思って、1つのパラメータしか伝達できなくて、関数をshowalertと名前を変えて、テストして意外にもできました!
以上の問題の解決により、微信androidバージョンとIOSバージョンの実現には大きな違いがあることが分かった.また、微信にはalert関数が内蔵されており、優先度が高い!分析が正しいかどうか分からない!
function alert(word, fn) {
$("#coverbg").show();
if (fn && typeof (fn) == "function") {
var conStr = "<div id='conDiv' class='conDiv'>" + "<div id='tipcontent' class='concontentc'>" + word + "</div>" + "<div class='conbtn' style='width:100%;' onclick='hideCon(" + fn + ");'> </div>" + "</div>"
} else {
var conStr = "<div id='conDiv' class='conDiv'>" + "<div id='tipcontent' class='concontentc'>" + word + "</div>" + "<div class='conbtn' style='width:100%;' onclick='hideCon();'> </div>" + "</div>"
}
if ($("#conDiv").length > 0) {
$("#conDiv").remove()
}
$("body").append($(conStr));
var wordWidth = noneWidth(word);
var divW = $("#conDiv").width();
if (wordWidth / divW > 0.8) {
wordWidth = divW * 0.8
}
$("#tipcontent").width(wordWidth);
var winH = $(window).height() / 2 - 90;
$("#conDiv").css("top", winH + "px")
}
外部ブラウザやAndroid携帯電話の微信でテストしても正確なコールバック関数fnは可能ですが、IOSでは正確なコールバック関数はできません.おかしいですね.そして一歩一歩問題を探し始め、疑い始めたのは
if (fn && typeof (fn) == "function")
条件が成立しないで、それからログを作って表示して、結果はundefinedに戻って微信の内部のブラウザの中で、それからまたcallを使って、applyなどの方式はすべてundeinedで、本当に無言で、最後にfnのパラメータを文字列に伝達して過去に依然としてundefinedであることを発見して、本当に人を悩ませて、後でalertが微信に使用されたのかもしれないと思って、1つのパラメータしか伝達できなくて、関数をshowalertと名前を変えて、テストして意外にもできました!
以上の問題の解決により、微信androidバージョンとIOSバージョンの実現には大きな違いがあることが分かった.また、微信にはalert関数が内蔵されており、優先度が高い!分析が正しいかどうか分からない!