のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,645,072人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレ+ JavaScript の質問用スレッド vol.105 +

JavaScript覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

801 = 784 :

質問です

ブラウザ:Android4のデフォルトブラウザ

[A.html]
<form action="b.html">
<input type="submit" value="Bへ">
</form>
※長ーいページの最下部にサブミットボタンがあります

[B.html]
<script src="B.js"></script>

[B.js]
alert($(window).scrollTop());



上記のような2ページがあって、B.htmlにJSがあります
A.htmlのサブミットボタンを押すと、画面はA.htmlのまま
ロードのインジケータが進み始め半分くらいすすんだところで
B.jsが発火して、A.jsのscrollTopがアラートされます

これは、私の書き方が糞なんでしょうか
それともデフォルトブラウザが糞なんでしょうか?

802 = :

どっちもクソ!

803 :

なんだそりゃ
表示のラグじゃなくて?
前のページのうちに発火して
DOMもそのままとな?
にわかに信じ難い…

804 = :

<form action="b.html">でB.html読みにいってくれるんだっけ?
A.jsってなんぞ?
アラートのダイアログが出るときにB.htmlは表示されるのか?
$(window).scrollTop()以外の情報は正常にとれるのか?
jQuery使わずにもっと基本的な構成で試してみたら?

805 = :

DOM終わった時点で読ませたきゃjqueryのready使えば
両方糞でFA

807 = :

800超えたのでテンプレに関する大物の変更提案などあればどうぞ。

808 = :

>>807
うざい

809 = 803 :

自分でも理解できないのですが、端的に言うと
リンク先のページのJSがページ遷移前に発火しているのです

810 = :

JQueryを使ってIDを取得するとき
var idName = $(this).attr("id");
と思いますが、さらにそのIDが規則正しく番号ふってあったとして
cont_1
cont_2
cont_3
その数字だけJQueryで取得するに適したメソッドはありますか?
無い場合はどう書けば取得できますか?

811 = :

>>810
正規表現で取るしかないと思う

812 = :

>>810
replaceで要らないところ消せば良いじゃん

813 = :

>>811
JQueryにはないですか。ありがとうございます
>>810の規則性の場合$は必須でしょうか?

815 = :

>>801
ページが完全に遷移した後にJSを実行したいなら、>>801のB.htmlとB.jsの書き方じゃダメだって

817 = :

>>816
ぐぐれカス

821 = :

>>820
いや、単なる予想。jQueryMobileじゃなくても ajax使った遷移だったらそうなるかなと。

823 = :

*submitをフックして*ajaxで取得して遷移したように見せかけてたらそうなるかなと。

827 = 826 :

そんなことあるわけない
何か他におかしい所があるに違いない


と、自分も疑って色々切り分けながら調べているのですが…

829 = :

>>827
どこかに問題が再現する最小構成のソースを置いてくれないか
このままだとエスパーでもない限り原因は分かりそうにない

830 = :

つーかなんでsubmitでページ遷移させてんの?>>801

831 = :

>>826
B.htmlが単体で不具合無く動くのは偶然で、
B.jsが実行されるときにDOMがB.htmlの内容を反映してる保証は無いってことを
>>805とか>>815とか>>825とかは言いたいんだと思う

HTMLの仕様?が実際にどうなってるのかは俺は知らんが

832 = :

試してみても>>801みたいな現象発生しなかった
環境記入と再現できる最小プログラム用意しろよ

833 = :

環境は書いてたごめん

834 :

>>830
なんか問題あるか?

835 = :

>>826
A.htmlの環境でB.jsが動いてるんなら、A.htmlで設定したグローバル変数がB.jsで読めるよね。
まずはそれ調べてみたら?

あと window.onload の時点はどうなの? レイアウトが確定するまでscrollTopのようなのは
どんな値になってても不思議じゃない気がするけど。

836 = :

出来るかもわからないのですがtextarea内の特定の文字列だけ色を変えることは出来ますか?
記号だけとかアルファベットだけ色を替えれればと思っています。

837 = :

>>836
色を変えたい文字だけspan class=~で囲んだものに置換してみるのはどう?

839 = :

>>838
>ScrollTopがA.htmlの時のままレンダリングがなされず、$(function(){})だけ発火
おまえ>>801で$(function(){})使って無いじゃん
>>826では使えって言っても関係無いとか答えてるし
他の人が$(function(){})関係の問題じゃないかって聞いてるのに無視してるし
$(function(){})使って問題が出るのか出ないのかどっちなんだ

840 = :

>>837
ありがとうございます。
やはり直接的には出来そうにないので、いったんtextarea内の文字を取得して
それをreplaceしてみたのですが、
text = text.replace(/hoge/gi, '<div style=color: #ff0000;>HOGE</div>');
このようにして置き換えを行うと<div style=color: #ff0000;>HOGE</div>がそのまま表示されてしまいます。
エンティティ化されているからだと思いますが実体をそのまま表示というのはreplaceでは出来ないものなのでしょうか。

841 = :

すっごいうざい

842 = :

>>840
この機会に正規表現につい調べて色々試すことをオススメする
じゃないとまた同じようなので躓く
http://www.tohoho-web.com/js/regexp.htm

843 = :

>>841 じゃお前が消えろ

844 = :

いや今回は正規表現関係なくね?
>>840はどうやってtextareaを書き換えてるんだ?

845 = :

>>840 あとなんでdivなん。spanでよくね?

846 = :

divもspanも関係なしにreplaceしたら<とかが<になるんで文字色がかわらんということだろ

847 = 838 :

>>839
使っても使わなくてもなりますよ
だから困ってたんですよ

848 = :

いつまでやってんだボケナス

849 = :

>>846
変わるわボケナスカボチャ

850 = :

>>847
おまえ向いてないわ


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について