1.ecshop的主體結構 <script type="Text/Javascript" language="JavaScript"> <!-- {literal} if (window.top != window) { window.top.location.href = document.location.href; } {/literal} //--> </script> <frameset rows="76,*" framespacing="0" border="0"> <frame src="index.php?act=top" id="header-frame" name="header-frame" frameborder="no" scrolling="no"> <frameset cols="180, 10, *" framespacing="0" border="0" id="frame-body"> <frame src="index.php?act=menu" id="menu-frame" name="menu-frame" frameborder="no" scrolling="yes"> <frame src="index.php?act=drag" id="drag-frame" name="drag-frame" frameborder="no" scrolling="no"> <frame src="index.php?act=main" id="main-frame" name="main-frame" frameborder="no" scrolling="yes"> </frameset> </frameset> <frameset rows="0, 0" framespacing="0" border="0"> <frame src="http://api.ecshop.com/record.php?mod=login&url={$shop_url}" id="hidd-frame" name="hidd-frame" frameborder="no" scrolling="no"> </frameset>
top表示最頂級的窗口,也就是最外層的窗口。若是一個大窗口中嵌套了幾個小窗口,那麼在小窗口中使用top就表示最外面的大窗口,就是這個意思了。
<li><a href="javascript:window.top.frames['main-frame'].document.location.reload();window.top.frames['header-frame'].document.location.reload()">{$lang.refresh}</a></li> 刷新
document 表示的是一個文檔對象,windows 表示一個窗口對象。 一個窗口下面能夠有不少的document對象。每一個document 都有 一個URL。 可是,這不是全部的區別。當你ctrl + F5 一個連接 http://www.jb51.net/#server 打印 alert(document.URL ); 和 alert(windows.location.href); 發現,這兩個的值不同, document.URL : http://www.jb51.net/ windows.location.href :http://www.jb51.net/#server 因此,若是要用 fragment 進行相應的處理的話,最好是用 windows.location.href 不然會出現很奇怪的錯誤。
2.ecshop的地區,支付方式,配送方式 $smarty->assign('countries', get_regions()); $smarty->assign('provinces', get_regions(1, 1)); $smarty->assign('cities', get_regions(2, 2)); function get_regions($type = 0, $parent = 0) { $sql = 'SELECT region_id, region_name FROM ' . $GLOBALS['ecs']->table('region') . " WHERE region_type = '$type' AND parent_id = '$parent'"; return $GLOBALS['db']->GetAll($sql); } //獲取配送方式 $directory = ROOT_PATH . 'includes/modules/shipping'; $dir = @opendir($directory); $set_modules = true; $modules = array(); while (false !== ($file = @readdir($dir))) { if (preg_match("/^.*?\.php$/", $file)) { if ($file != 'express.php') { include_once($directory . '/' . $file); } } } @closedir($dir); unset($set_modules); foreach ($modules AS $key => $value) { ksort($modules[$key]); } ksort($modules);