作者 主題: 按下搜尋,頁面會閃爍一下  (閱讀 3416 次)

0 會員 與 1 訪客 正在閱讀本文。

crazyday7

  • 懷疑的國中生
  • **
  • 文章數: 83
    • 檢視個人資料
按下搜尋,頁面會閃爍一下
« 於: 2011-03-05 11:47 »
感覺就像刷新頁面,雖然只有閃爍不到1秒,
但是感覺不好看
請問有辦法解決嗎?

代碼: [選擇]
<form id="form" name="form" method="post"  action="test.php" >關鍵字
<input type="text" name="keyword" id="keyword" maxlength="10"/>
<label>
<input type="submit" name="button2" id="button2" size="10" value="搜尋" />
</label>
</form>

<? 
$str="SELECT * FROM Register WHERE people_id LIKE '".$_POST[keyword]."' ";
$result=mysql_query($str);
list($people_id)=mysql_fetch_row($result);

if($_POST[keyword]!=$people_id)
{
echo "此人不在名單之中";
}
    else
{
echo "此人在名單中";
}
?>
有時問的問題會有點奇怪...
請見怪不怪...
新手上路,希望各位多多包含,謝謝m(_ _)m。

fattomhk

  • 可愛的小學生
  • *
  • 文章數: 6
    • 檢視個人資料
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #1 於: 2011-03-05 12:13 »
不想這樣的話就用ajax吧~

Yamaka

  • 俺是博士!
  • *****
  • 文章數: 4913
    • 檢視個人資料
    • http://www.ecmagic.com
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #2 於: 2011-03-05 12:37 »
感覺就像刷新頁面,雖然只有閃爍不到1秒,
但是感覺不好看
請問有辦法解決嗎?

瀏覽器的問題吧, 我在背景加了張圖來測試比較清楚

代碼: [選擇]
<body background="images/bg-pcs01.jpg">
<form id="form" name="form" method="post"  action="" >關鍵字
<input type="text" name="keyword" id="keyword" maxlength="10"/>
<label>
<input type="submit" name="button2" id="button2" size="10" value="搜尋" />
</label>
</form>
<br><br>
<?php
print_r
($_POST);
?>

</body>

firefox, chrome 在 linux 與 windows 版都不會閃
ie6 就會閃一下, ie7 閃的情形好一點, ie8 就看不出來會閃


crazyday7

  • 懷疑的國中生
  • **
  • 文章數: 83
    • 檢視個人資料
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #3 於: 2011-03-07 09:06 »
真的,我是IE7,用火狐測試就不會閃= =...
有時問的問題會有點奇怪...
請見怪不怪...
新手上路,希望各位多多包含,謝謝m(_ _)m。

ricky

  • 區域板主
  • 鑽研的研究生
  • *****
  • 文章數: 669
    • 檢視個人資料
    • Ricky 碎碎唸
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #4 於: 2011-03-07 10:17 »
用Post方式送出,整個頁面當然就會重新載入一次阿。
至於會不會閃,這是看各家瀏覽器排版引擎的設計。
如果要徹底避免這個問題,請改用ajax吧。
我的symfony作品:YOMOpets 寵物誌
有興趣可以一起來討論symfony喔
我的部落格:http://ricky.ez2.us/

fattomhk

  • 可愛的小學生
  • *
  • 文章數: 6
    • 檢視個人資料
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #5 於: 2011-03-07 10:20 »
那用GET的方法送出會不會重新載入?

hikohan

  • 俺是博士!
  • *****
  • 文章數: 1288
    • 檢視個人資料
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #6 於: 2011-03-07 10:45 »
頁面程式 跟 頁面程式 之間,

無論 form method ,當次頁面回應前,出現的空白(閃一下),
這是很難避免的,瀏覽器預設的底頁色為白色,如果有辦法搞瀏覽器預設底色/圖片
除了 aj  原地反應外,還有

'flash'

也可以做到,就是整拖拉庫都做在 flash 上面,保證不閃。

答案我已經說了,想一下吧。
lifeIsFunWithPHP.

ricky

  • 區域板主
  • 鑽研的研究生
  • *****
  • 文章數: 669
    • 檢視個人資料
    • Ricky 碎碎唸
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #7 於: 2011-03-07 10:46 »
網頁本來就是完整載入,沒有只更新一半這回事情。
直到AJAX技術的出現...
如果你要懶人法,那就包個iframe吧。
我的symfony作品:YOMOpets 寵物誌
有興趣可以一起來討論symfony喔
我的部落格:http://ricky.ez2.us/

crazyday7

  • 懷疑的國中生
  • **
  • 文章數: 83
    • 檢視個人資料
回覆: 按下搜尋,頁面會閃爍一下
« 回覆 #8 於: 2011-03-07 15:43 »
感謝各位提供的方法,小弟會去嘗試看看^^
有時問的問題會有點奇怪...
請見怪不怪...
新手上路,希望各位多多包含,謝謝m(_ _)m。