首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何基于数据属性加载文件?

如何基于数据属性加载文件?
EN

Stack Overflow用户
提问于 2017-07-22 13:25:29
回答 2查看 1.7K关注 0票数 0

如何基于数据属性加载文件?

由于某种原因,$(这个)似乎不起作用。

代码语言:javascript
复制
if ($('.html').data('load-file')) {
  $(this).load($(this).data("load-file") + ' ' +   $(this).data("load-content"));
}
代码语言:javascript
复制
body {
    margin: 0;
    padding: 0;
}

.html {
    width: calc(100% - 10px);
    height: 80px;
    margin: 10px;
    background: #f6f6f6;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div 
  class="html" 
  data-load-file="../index.html" 
  data-load-content=".icon_environment"></div>

<div class="html"></div>

EN

Stack Overflow用户

发布于 2017-07-22 13:32:24

您的jQuery(这个)不是指您的div.html,而是指整个文档。

您需要将jQuery(this)替换为jQuery('.html'),或者获取每个div.html并制作一个附件以确保jQuery(这个)引用您的div.html。

还可以添加一个文档,以确保在没有div的情况下,在页面加载之前不会执行它。

代码语言:javascript
复制
jQuery(document).ready(function(){

  jQuery('.html[data-load-file]').each(function(){
    
    var loadFile = jQuery(this).data('load-file') ;
    console.log(loadFile) ;
    var loadContent = jQuery(this).data('load-content') ;
    console.log(loadContent) ;
  
    var load_url = loadFile + ' ' + loadContent ;
    console.log(load_url) ;
  
    jQuery(this).load(load_url);
    
  }) ;
    
}) ;
代码语言:javascript
复制
body {
margin: 0;
padding: 0;
}

.html {
width: calc(100% - 10px);
height: 80px;
margin: 10px;
background: #f6f6f6;}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div 
  class="html" 
  data-load-file="../index.html" 
  data-load-content=".icon_environment"></div>

<div class="html"></div>

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45255083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档