我正在一个网站上工作,网页没有加载网址,只是更改并显示页面。我在页面中添加了一个JavaScript代码,但代码只在我刷新页面时运行,而不是在我单击链接进入页面时运行。有人可以帮助我吗?
这是代码:
var StockGridComponent = function (container, state) {
this._dataView = new Slick.Data.DataView();
this._container = container;
this._state = state;
this._grid = null;
this._columns = [...];
this._data = data;
container.on('open', this._createGrid, this);
};
StockGridComponent.prototype._createGrid = function () {
this._grid = new Slick.Grid(
this._container.getElement(),
this._dataView,
this._columns,
this._options
);
this._grid.setSelectionModel(new Slick.CellSelectionModel());
this._dataView.onRowCountChanged.subscribe(function (e, args) {
console.log(this); <-- return DataView
this._grid.updateRowCount(); <-- error: "Uncaught TypeError: Cannot read property 'updateRowCount' of undefined"
this._grid.render();
}
);
答案 0 :(得分:1)
在Squarespace中,当您的自定义Javascript仅在页面刷新后有效时,很可能与Squarespace's AJAX loading有关:
有时,Ajax可能会与嵌入式自定义代码或锚点发生冲突 链接。 Ajax还可能干扰站点分析,记录命中 仅限第一页。
您可以disable AJAX for your template。或者,请参阅此处列出的其他方法:https://stackoverflow.com/a/42604055/5338581