Задать вопрос
@Pallada99
Новичок

Как в скрипте прописать загрузку после Jquery?

Здравствуйте! Подскажите есть скрипт но он подгружается быстрей чем Jquery, переместить его и поставить после загрузки Jquery нет возможности, перестают работать некоторые функции.
Вопрос в следующем можно ли как то прописать в этом скрипте чтобы он загружался после того как загрузиться Jquery(не перемещая его куда либо)
<script>
 	jQuery('#shop-basket a').on('click', function() {
	var a = jQuery(this);
	var b = a.attr('href');
	window.location = b;
});
 </script>


Было прописано вот так:
<script>
$(document).ready(function() {
 	jQuery('#shop-basket a').on('click', function() {
  var a = jQuery(this);
  var b = a.attr('href');
  window.location = b;
});
 	});
 </script>


Но консоль ругается на $ "(index):136 Uncaught ReferenceError: $ is not defined"

Есть еще какие нибудь варианты? кроме того что предложено ниже.
___________________________________________________________________________________

Оставил следующий вариант (в консоли нет ошибки, но не работает функция переброса):
Может что то надо добавить в код который вызывает данный скрипт:
<div class="actions">
<a class="basketclear" href="javascript://" rel="nofollow" onclick="return clearBasket();">Очистить</a>
<a class="basketorder" href="/shop/checkout">Оформить заказ</a>
</div>
</div>
<!--Скрипт для корзины кнопки оформить заказ-->
<script>
window.onload = function() {
  jQuery('#shop-basket a').on('click', function() {
  var a = jQuery(this);
  var b = a.attr('href');
  window.location = b;
});
};
</script>

Вопрос решил сам, спасибо всем за предложенные варианты.
  • Вопрос задан
  • 142 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 3
Benzin102
@Benzin102
Shitcoder
let list = document.querySelectorAll('#shop-basket a');

for (let item of list) {
	item.addEventListener('click', function(){
  	window.location = this.getAttribute('href');
  });
}

А на js переписать нельзя?

За корректность не совсем ручаюсь правда
Ответ написан
@Tendor
заменить $ на jQuery
<script>
jQuery(document).ready(function() {
 	jQuery('#shop-basket a').on('click', function() {
  var a = jQuery(this);
  var b = a.attr('href');
  window.location = b;
});
 	});
 </script>
Ответ написан
функция test будет вызвана когда появится jquery

var test = function() {
	console.log('yes')
}
function view() {
	if( window.jQuery ) {
    	test()
	} else {
		setTimeout(function() {
			console.log('not')
			view(test)
		}, 50)
	}
}
view(test)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы