js ve css on-demand yükleme

2 Cevap php

i on-demand yükleme kavramı tarafından karıştı

Ben bu blogu post gördüm ve ben ff kullanarak php ile aynı yapabileceğini merak ediyordum. yaklaşım:

  1. Geçerli url kontrol
  2. Geçerli url dayalı css veya js hizmet

hangi Kohana böyle yapılabilir

if (uri::segment(1) == 'search') // Geçerli url kontrol
echo html::stylesheet('search.css'); // serve stylesheet
echo html::script('search.js'); // serve script
endif;

ya da ben fikir yanlış alıyorum?

bir yan soru olurdu kenara site çapında forms.css ve layout.css gelen her sayfa için bir css dosyası var tamam ti olduğunu

2 Cevap

Eğer yaklaşım kullanabilirsiniz. css dosyaları daha iyi baş servis edilir ve böylece site geniş şablonu sizin koşulları koyabilirsiniz.

senin html altındaki servis edilmelidir javascript, için, sadece herhangi bir url tabanlı koşulu kullanmadan application / view / your_action.php doğrudan etiketleri koyabilirsiniz.

hakkında

would be is ti alright to have a css file for each individual page aside from the site-wide forms.css and layout.css

iyi, bu kullanıcı tarafından ziyaret her yeni sayfa için (css dosyaları için) ekstra bir isteği üretecektir bunu ama aklınızda tutabilirsiniz. performans kritik olup olmadığını daha iyi bir benzersiz sıkıştırılmış css yarayacağıma.

İşte REQUEST_URI kullanılarak HTML ve PHP için bir örnektir. değişkeni konum sayfası, vb dışarı eğik çizgi ile tam sayfa olsun bunun bazı ayrıştırma yapmak isteyebilirsiniz yapacak, genellikle kök belgeye göreli bir yol bulunuyor.

<!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>Demo</title>
<?php

switch($_SERVER['REQUEST_URI']) {
    case "/home.php":
    	echo '<link type="text/css" href="home.css" rel="stylesheet" />';
    	echo '<script type="text/javascript" src="js/home.js"></script>';
    break;

    case "/about.php":
    	echo '<link type="text/css" href="about.css" rel="stylesheet" />';
    	echo '<script type="text/javascript" src="js/about.js"></script>';
    break;

    case "/contact.php":
    	echo '<link type="text/css" href="contact.css" rel="stylesheet" />';
    	echo '<script type="text/javascript" src="js/contact.js"></script>';
    break;

    default :
    	echo '<link type="text/css" href="default.css" rel="stylesheet" />';
    	echo '<script type="text/javascript" src="js/default.js"></script>';
    break;
}
?>
</head>

<body>
My Page
</body>
</html>