Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么';最好在joomla、模块或条件语句中使用它来检查页面_Javascript_Html_Joomla_Module - Fatal编程技术网

Javascript 什么';最好在joomla、模块或条件语句中使用它来检查页面

Javascript 什么';最好在joomla、模块或条件语句中使用它来检查页面,javascript,html,joomla,module,Javascript,Html,Joomla,Module,我想知道在不同页面上显示模板不同部分的最佳方式是什么 例如,使用模块 或 例如,检查页面的条件语句 如果($menu->getActive()==$menu->getDefault()): 当我说“最佳”时,我的意思是,通过什么方法可以获得最佳性能、浏览器(和版本)的最佳支持以及最安全的使用。现在在我的站点中,我正在使用一个名为custom html advanced的模块在某些地方引入javascript。我使用条件语句在不同的地方显示不同的代码,但最好尽可能保持一致,所以我想知道哪种方法是

我想知道在不同页面上显示模板不同部分的最佳方式是什么

  • 例如,使用模块
  • 例如,检查页面的条件语句
  • 如果($menu->getActive()==$menu->getDefault()):

    当我说“最佳”时,我的意思是,通过什么方法可以获得最佳性能、浏览器(和版本)的最佳支持以及最安全的使用。现在在我的站点中,我正在使用一个名为custom html advanced的模块在某些地方引入javascript。我使用条件语句在不同的地方显示不同的代码,但最好尽可能保持一致,所以我想知道哪种方法是最好的

    编辑:

    我可以补充一点,我的代码已经包含了允许不同页面结构的条件语句,所以看起来像这样

    if page-1
    
    HTML stuff for page 1...
    
    elseif page-2
    
    HTML stuff for page 2...
    
    elseif page-3
    
    HTML stuff for page 3...
    

    因此,最好将javascript/html代码直接粘贴到条件语句中,因为这样会更快?

    最好的方法是使用模块并在模板中创建所需的位置

    原因:

  • 它使网站易于维护和定制。例如,如果您想删除某些内容,那么禁用该模块要比插入模板代码容易得多

  • 如果你有很多“选项”,那么If/else语句就会一团糟

  • 条件语句不是noob友好的


  • 对浏览器的支持或这两种方法的安全性取决于您在代码/模块中输入的内容。

    我的页面有一个滑块(使用javascript)和一些缩略图(仅html+css),使用,最初我是使用前面提到的模块将它们实现为模块,但每次我需要更改某些内容时,都必须在joomla的后端进行更改,这变得非常麻烦,所以我直接将它们拉到代码中,因为我有条件语句,因为我需要每个页面都有不同的结构(我有3个不同的页面结构)。当编码完成后,我可能会将它们作为模块放回去,以使其在以后的更改中更易于维护和定制。我突然想到,如果我已经在为不同的页面结构使用条件语句,那么将代码直接放在html页面中不是最好吗?因为joomla本身可能使用了一些条件语句,尽管优化程度更高,所以与其做两次,不如只做一次好吗?@jedanput:是的,将js托管到主模板文件中会更快,但正如HamZa所说,这只是为了可维护性。在后端有单独的模块意味着sql语句返回一个额外的行,必须对其进行分析,即在普通服务器上,差异将小于0.1ms,即使使用正确的缓存,也不会如此!因此,在这种情况下,不要担心性能,只要考虑可维护性,问问自己:有人能够理解这一点吗?两年后我能理解它吗?