Tworzę stronkę działa na "normalnych" przeglądarkach i nie wszystko działa prawidłowo na IE 11. Używam Babela i webpacka. Błąd polega na tym, że przeglądarka nie jest w stanie obsłużyc tych if'ów. Mam jeszcze jeden mniejszy błąd otóż hiperłącza nie działają
if (scrollPosition + window.innerHeight > $(technology).offset().top) {
technology.classList.add('my-technologies__technology--scrolled')
}
if (scrollPosition > $(partOfPage).offset().top - 50) {
listOfPageParts[currentPartOfPage].classList.remove('nav__list-item--actual');
currentPartOfPage = i;
listOfPageParts[currentPartOfPage].classList.add('nav__list-item--actual');
}
webpack.config.js
const path = require('path');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const autoprefixer = require('autoprefixer');
module.exports = {
entry: './src/js/index.js',
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist')
},
plugins: [new MiniCssExtractPlugin(),
new OptimizeCSSAssetsPlugin({
assetNameRegExp: /\.optimize\.css$/g,
cssProcessor: require('cssnano'),
cssProcessorPluginOptions: {
preset: ['default', {
discardComments: {
removeAll: true
}
}],
},
canPrint: false
})
],
module: {
rules: [{
test: /\.m?js$/,
exclude: /(node_modules|bower_components)/,
use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-env']
}
}
},
{
test: /\.s[ac]ss$/i,
use: [MiniCssExtractPlugin.loader,
'css-loader',
{
loader: 'postcss-loader',
options: {
plugins: () => [autoprefixer()]
}
},
'sass-loader'
]
},
{
test: /\.(png|svg|jpg|gif)$/,
use: [
'file-loader',
],
}
]
}
}
.babelrc:
{
"presets": [
["@babel/env", {
"targets": {
"browsers": ["last 2 versions", "ie 11"]
}
}]
]
}