Линк от картинка да стартира JS в извикваната страница

timela

Registered
Имам следния проблем. Опитвам се да напиша код, с който кликвайки върху една от няколко разположени в един div картинки да се зареди извикваната страница (2.стр.), като автоматично се стартират два JS файла.
Кликвайки в/у друга картинка трябва да се стартират съответните два JS от извикваната страница.
Или с други думи, кликвайки в/у "proba.jpg" да се зарежда страницата"companies.php" и да се стартират скриптовете "chois1()" и "changeImage1()".

1.стр.
<div id="p2">
<a href="companies.php" target="_self"><img class="im1" src="images/proba.jpg" ></a>

<img class="im1" src="images/proba2.jpg">
<img class="im1" src="images/proba3.jpg" >
...
</div>


2.стр. (companies.php)
...
<div id="boxzk">
<img class="im2" name="img1" src="images/test1.jpg"
onclick="chois1(); changeImage1()">

<img class="im2" name="img2" src="images/test2.jpg"
onclick="chois2(); changeImage2()">

...
</div>
...
 
Ако приемем, че скриптовете са ти в същата папка като файла:
HTML:
<img src="http://placehold.it/200x200" class="clickable" data-script="js1">
<img src="http://placehold.it/200x200" class="clickable" data-script="js2">
[js]$('.clickable').on('click', function () {
var src = $(this).data('script') + '.js';
var loaded = $('script');
var exists = false;

for (var i = 0; i < loaded.length; i++) {
if (loaded.src.split('/').slice(-1)[0] === src) {
exists = true;
break;
}
}

if (exists === false) {
var element = document.createElement('script');
element.setAttribute('src', src);
$('body').append(element);
}
});[/js]
 
Ето и малко по-jQuery :D код
Код:
$('.clickable').on('click', function () {
  var src = $(this).data('script') + '.js';
  var exists = $("script[src*='"+src+"']").length>0;
  if (exists === false) {
   $('<script/>',{src:src}).appendTo('body');
  }
});
 

Back
Горе