javascript - 多个 HTML 文件仅链接到一个 Javascript 文件

标签 javascript html

我想在外部 Javascript 文件中添加函数以链接到我的每个 html 文件。但是,我希望一些函数链接到一个 html 文件,而其他函数将链接到另一个 html 文件。我需要有多个 Javascript 文件还是可以将它们压缩成一个文件?当我尝试使用一个 Javascript 文件时,每个函数都会在我的每个页面上运行。有没有办法在没有完整代码的情况下调用html中的特定函数?就像 css 使用 #example对于 ID example在 html 中。

我在 index.html 文件中使用了这个链接:

<script type="text/javascript" src="example.js"></script>

虽然这个在另一个 html 文件中:

<script type="text/javascript" src="example2.js"></script>

这些链接是我的 html 文件中包含的唯一 Javascript。


我想我找到了问题所在。我有一个来自免费网站的 RSS 提要,但该功能旁边没有任何内容。

html 文件链接到其中包含此文件的 Javascript 文件,并且由于函数为空,它会自动运行或者这就是我假设的。

(function(){
var a=window;
var b="";
for(i=0;i<a.rssfeed_url.length;i++) {
    b=b+"rssfeed[url]["+i+"]="+encodeURIComponent(a.rssfeed_url[i])+"&"
}
var c="http://feed.surfing-waves.com/php/rssfeed.php"+"?"+b+"rssfeed[type]="+(a.rssfeed_type?a.rssfeed_type:"")+"&rssfeed[frame_width]="+a.rssfeed_frame_width+"&rssfeed[frame_height]="+a.rssfeed_frame_height+"&rssfeed[scroll]="+(a.rssfeed_scroll?a.rssfeed_scroll:"")+"&rssfeed[scroll_step]="+(a.rssfeed_scroll_step?a.rssfeed_scroll_step:"")+"&rssfeed[scroll_bar]="+(a.rssfeed_scroll_bar?a.rssfeed_scroll_bar:"")+"&rssfeed[target]="+(a.rssfeed_target?a.rssfeed_target:"")+"&rssfeed[font_size]="+(a.rssfeed_font_size?a.rssfeed_font_size:"")+"&rssfeed[font_face]="+(a.rssfeed_font_face?a.rssfeed_font_face:"")+"&rssfeed[border]="+(a.rssfeed_border?a.rssfeed_border:"")+"&rssfeed[css_url]="+(a.rssfeed_css_url?encodeURIComponent(a.rssfeed_css_url):"")+"&rssfeed[title]="+(a.rssfeed_title?a.rssfeed_title:"")+"&rssfeed[title_name]="+(a.rssfeed_title_name?a.rssfeed_title_name:"")+"&rssfeed[title_bgcolor]="+(a.rssfeed_title_bgcolor?encodeURIComponent(a.rssfeed_title_bgcolor):"")+"&rssfeed[title_color]="+(a.rssfeed_title_color?encodeURIComponent(a.rssfeed_title_color):"")+"&rssfeed[title_bgimage]="+(a.rssfeed_title_bgimage?encodeURIComponent(a.rssfeed_title_bgimage):"")+"&rssfeed[footer]="+(a.rssfeed_footer?a.rssfeed_footer:"")+"&rssfeed[footer_name]="+(a.rssfeed_footer_name?a.rssfeed_footer_name:"")+"&rssfeed[footer_bgcolor]="+(a.rssfeed_footer_bgcolor?encodeURIComponent(a.rssfeed_footer_bgcolor):"")+"&rssfeed[footer_color]="+(a.rssfeed_footer_color?encodeURIComponent(a.rssfeed_footer_color):"")+"&rssfeed[footer_bgimage]="+(a.rssfeed_footer_bgimage?encodeURIComponent(a.rssfeed_footer_bgimage):"")+"&rssfeed[item_bgcolor]="+(a.rssfeed_item_bgcolor?encodeURIComponent(a.rssfeed_item_bgcolor):"")+"&rssfeed[item_bgimage]="+(a.rssfeed_item_bgimage?encodeURIComponent(a.rssfeed_item_bgimage):"")+"&rssfeed[item_title_length]="+(a.rssfeed_item_title_length?a.rssfeed_item_title_length:"")+"&rssfeed[item_title_color]="+(a.rssfeed_item_title_color?encodeURIComponent(a.rssfeed_item_title_color):"")+"&rssfeed[item_border_bottom]="+(a.rssfeed_item_border_bottom?a.rssfeed_item_border_bottom:"")+"&rssfeed[item_source_icon]="+(a.rssfeed_item_source_icon?a.rssfeed_item_source_icon:"")+"&rssfeed[item_date]="+(a.rssfeed_item_date?a.rssfeed_item_date:"")+"&rssfeed[item_description]="+(a.rssfeed_item_description?a.rssfeed_item_description:"")+"&rssfeed[item_description_length]="+(a.rssfeed_item_description_length?a.rssfeed_item_description_length:"")+"&rssfeed[item_description_color]="+(a.rssfeed_item_description_color?encodeURIComponent(a.rssfeed_item_description_color):"")+"&rssfeed[item_description_link_color]="+(a.rssfeed_item_description_link_color?encodeURIComponent(a.rssfeed_item_description_link_color):"")+"&rssfeed[item_description_tag]="+(a.rssfeed_item_description_tag?a.rssfeed_item_description_tag:"")+"&rssfeed[no_items]="+(a.rssfeed_no_items?a.rssfeed_no_items:"")+"&rssfeed[cache]="+(a.rssfeed_cache?a.rssfeed_cache:"");
if(a.rssfeed_border!="off"&&!a.rssfeed_css_url){}
document.write('<iframe name="rssfeed_frame" width="'+a.rssfeed_frame_width+'" height="'+a.rssfeed_frame_height+'" frameborder="0" src="'+c+'" marginwidth="0" marginheight="0" vspace="0" hspace="0" scrolling="no" ALLOWTRANSPARENCY="true"></iframe>')
})()

现在唯一的问题是我不知道如何调用这个函数。我调用的另一个函数是因为我有 onClick="example()"这很好,但 RSS 提要需要自动加载。我不想必须单击按钮才能显示提要。

最佳答案

函数只有在您调用它们时才会运行。因此,您可以拥有一个 JS 文件,其中包含一个 HTML 文件永远不会调用的函数,并且不会出错——它们不会影响页面的功能。额外未使用代码的唯一缺点是加载时间更长,但在文件变得非常大之前这并不重要。

关于javascript - 多个 HTML 文件仅链接到一个 Javascript 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15838481/

相关文章:

javascript - 在angularjs中提交时显示验证错误消息

javascript - 如何在promise链中调用Q promise notify

javascript - 如何在 JavaScript 中比较变量并过滤空白值

javascript - 数据绑定(bind)到 Windows 8 ListView

javascript - 获取超出最大调用堆栈大小

javascript - 为什么函数在console.log中先执行?

javascript - 显示嵌套的 JSON 数据

javascript - 通过键将平面对象转换为嵌套结构

javascript - Circle - Canvas 获取 lineWidth 的像素颜色

javascript - 在 Django 表单中使用 .submit(function) 时出现 "Forbidden 403 - CSRF verification failed"