今起こっている現象
onsubmit、onclickをした際にスマホの時に発火しない。
前提
form内タグ内で起こっています。
やっていること
・プロフィールの変更を検知しています。
・具体的には↓
ページ読み込み時点での情報送信する要素を取得してきて
onclickまたはonsubmitをした際にもう一度同じ要素を取得し
onclickまたはonsubmitをした時点とする前で要素に変更があったのかというものです。
該当のソースコード
該当コードのみ抜粋
formの部分をボタンにしてonclickのバージョン
formの部分をclassではなくidのバージョン
formの部分をform.addEventListener("submit", function(event) のバージョン
form自体にsetAttributeによるonsubmitの付与などは検証済みです。
js
1ページ読み込み時に要素取得後にonsubmitをした際に↓を発火させる 2 var form = document.getElementsByClassName("c-form")[0];3 4 form.onsubmit = function(){5 6 要素取得 7 sendToKarte(要素を送信)8}9
補足情報(FW/ツールのバージョンなど)
・外部ツールによりJSを埋め込んでいる状態。
・現状はスマホの時のみtouchstartを使用しているが発火率が100%ではない。
・PCでの発火率は100%
・PCのディベロッパーツールによるスマホのでも100%発火
・onsubmitの際はformのid,class両方のパターンで行ったが変化なし。
・CSSでcursor: pointer;を当てるも変化なし
考えれる改善案
・読み込みの段階で読み込まれていないのではないのか?下記記事を参考
https://qiita.com/konjac_neko/items/dd3d65ec07b15a535093
入れ込もうとしているページのheadタグにsync確認済み、可能性はあるがエンジニアではないため
この件はまだ未検証。
・使用している外部ツールの問題?
KARTEを使用しているときにツール自体がスマホの発火率が悪い可能性。
このonsubmitスマホで発火しないことに対して、有識者の方々のご助力をお願いしたいです、、!
0 コメント