没有“onload”的JavaScript文件无法正常工作

时间:2018-03-17 18:54:23

标签: javascript html5

问题得到解决。 我只是创建适合文本的JavaScript代码。 https://github.com/foxreaper/font-master/tree/master

随意使用。但请告诉我一些你工作的例子:D

我的JavaScript文件存在问题。 所以。当我在HTML中有JavaScript代码时,一切正常。我使用代码:

HTML

<body onload="start()">

的JavaScript

function start() {
move();
font();
alert();
}

我甚至试图在

的HTML文件中替换我的“onload”
window.addEventListener("load", function(){

但是,没有任何事情发生。有什么想法吗?

因此,如果没有“onload”,我的JavaScript文件在HTML内部无效,显然代码不能用作外部文件。 我想将我的JavaScript代码放在.js扩展名中并将其加载为<script src="mycode.js"></script> 在html里面。

现在我的代码是这样的:

window.onload = function(){ 
  move();
  font();
  alert();
}

并且它在没有“onload”的情况下处理HTML,但不是作为外部文件窃取。

1 个答案:

答案 0 :(得分:0)

请勿使用 <v-select class="my-4 dropdownHashgroup" v-model="filterStatus" :onChange="statusOnChange" :options="placeStatus" label="label" placeholder="Status"></v-select> <input type="text" class="form-control search ml-4 mb-4" placeholder="search" v-model="filterNameInput" :onChange="filterByName"> <b-table hover responsive="sm" :busy.sync="isBusy" :sort-by.sync="sortBy" :sort-desc.sync="sortDesc" :items="fetchPlaces" :fields="fields" :current-page="currentPage" :per-page="perPage" @row-clicked="rowClickHandler"> </b-table> import vSelect from 'vue-select' export default { name: 'grid-places', data: () => { return { apiUrl: 'apiUrl', apiKey: 'apiKey', isBusy: false, fields: [ { key: 'name', sortable: true }, { key: 'created', sortable: true }, { key: 'updated', sortable: true }, { key: 'score' }, { key: 'categories' } ], currentPage: 1, perPage: 10, totalRows: 0, sortBy: 'name', sortDesc: false, placeStatus: ['DRAFT', 'PUBLISHED', 'DISABLED'], filterStatus: 'PUBLISHED', filterNameInput: '', fetchPlaces: [] } }, methods: { updateFetchPlaces (newParams) { this.$http.get(this.apiUrl + newParams).then((data) => { let items = data.body.data this.totalRows = data.body.totalItems this.fetchPlaces = items || [] }) }, }, computed: { params () { let params = '?apikey=' + this.apiKey + '&lng=en&page=' + this.currentPage + '&limit=' + this.perPage if (this.sortBy) { params += '&sort=' + this.sortBy if (this.sortDesc) { params += '&dir=DESC' } } if (this.filterStatus !== '' || this.filterNameInput !== '') { params += '&sort=name&dir=ASC' } if (this.filterStatus !== '' && this.filterNameInput === '') { params += '&filter[status]=like|' + this.filterStatus } if (this.filterNameInput !== '' && this.filterStatus === '') { params += '&filter[name]=%like%|' + this.filterNameInput } return params }, statusOnChange () { }, filterByName () { } }, watch: { params (newParams, oldParams) { console.log('going to fetch for:', newParams) this.$http.get(this.apiUrl + newParams).then((data) => { let items = data.body.data this.totalRows = data.body.totalItems this.fetchPlaces = items || [] console.log(this.fetchPlaces) console.log(this.currentPage) }) } }, created () { this.updateFetchPlaces(this.params) }, components: { vSelect } 。只需在window.onload代码关闭之前放置<script>(代码或内联)。

per Google

  

简短的故事是我们不想等待DOMContentReady(或   更糟糕的是负载事件)因为它会导致糟糕的用户体验。用户界面是   在从网络加载所有DOM之前没有响应。所以   首选方法是尽快使用内联脚本。

     

  initWidget(的document.getElementById( '我的小部件'));

     

是的,它不易维护,但它可以带来更好的用户   经验。

     

故意遗漏了DOMContentReady包装器   能够阻止Google Apps在此反模式中使用。