Чистый URL -адрес и JavaScript Заказа на загрузку в PHP
-
27-10-2019 - |
Вопрос
Я пытаюсь создать php webpage.packing.php содержит:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta name="description" content="Fresh Sliding Thumbnails Gallery with jQuery and PHP" />
<meta name="keywords" content="jquery, images, gallery, full page, thumbnails, scrolling, sliding, php, xml"/>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen"/>
<link rel="stylesheet" type="text/css" href="css/ddsmoothmenu.css" />
<script type="text/javascript" src="js/jquery-1.6.1.js"></script>
<link rel="stylesheet" type="text/css" href="css/site.css" />
<script type="text/javascript" src="js/ddsmoothmenu.js">
</script>
<script type="text/javascript" src="js/jquery.gallery.js"></script>
<script type="text/javascript" >
$(document).ready( function(){
// Menu
ddsmoothmenu.init({
mainmenuid: "smoothmenu1", //menu DIV id
orientation: 'h', //Horizontal or vertical menu: Set to "h" or "v"
classname: 'ddsmoothmenu', //class added to menu's outer DIV
//customtheme: ["#1c5a80", "#18374a"],
contentsource: "markup" //"markup" or ["container_id", "path_to_menu_file"]
});
});
</script>
и мой .htaccess
RewriteEngine On
RewriteRule ^packing/Pure packing.php?id=pure
RewriteRule ^packing/ExtraVirgin packing.php?id=EV
Теперь, когда я открываю свой php, он показывает, что я открываю packing.php
Но когда я открываю, используя чистый URL, он дает ошибку в Firebug, заявляя, что $ не определен.
Теперь я знаю, что проблема связана с неправильным порядком загрузки Javascripts. Почему это происходит и как я могу это решить?
Спасибо.
Решение
Когда вы используете свои чистые URL -адреса, браузер думает, что он находится в другом каталоге (/packing/pure
) Относительные URL -адреса, указывающие на ваши файлы JS, больше не будут работать.
Вместо этого используйте абсолютные URL -адреса:
<script type="text/javascript" src="/js/jquery.gallery.js">
Другие советы
Там может быть проблема с путями? Вы не даете пути, но вы меняете пути с корня (packing.php
) до 2 -го уровня (packing/Pure
) Вероятно, он ищет ваши файлы .js в неправильном пути, как packing/js/
вместо просто /js
.
Попробуйте использовать абсолютные пути для загрузки:
<script type="text/javascript" src="/js/jquery-1.6.1.js"></script>
(Обратите внимание на черту!)
или даже
<script type="text/javascript" src="http://yoursite.com/js/jquery-1.6.1.js"></script>