2013-02-17 2 views
0

У меня есть 2 отдельных букмарклетысочетающих 2 bookmaklets

javascript: (function() { var url = document.location; var links = document.getElementsByTagName('link'); var myvar = 'none'; for (var i = 0, l; l = links[i]; i++) { if (l.getAttribute('rel') == 'next') { myvar = l.getAttribute('href'); break; } } alert(myvar); })(); 

и

javascript: (function() { var url = document.location; var links = document.getElementsByTagName('link'); var myvar = 'none'; for (var i = 0, l; l = links[i]; i++) { if (l.getAttribute('rel') == 'prev') { myvar = l.getAttribute('href'); break; } } alert(myvar); })(); 

, и я хочу, чтобы объединить их в один, так оба появляются в одном букмарклете. Я надеялся, что это будет делать это, но очевидно, что я заткнул

javascript: (function() { var url = document.location; var links = document.getElementsByTagName('link'); var myvar = 'none'; var myvar1 = 'none'; for (var i = 0, l; l = links[i]; i++) { if (l.getAttribute('rel') == 'next') { myvar = l.getAttribute('href'); break; } } { if (l.getAttribute('rel') == 'prev') { myvar1 = l.getAttribute('href'); break; } } alert(myvar + ' ' + myvar1); })(); 

ответ

0

Попробуйте это:

javascript: (function() { var url = document.location; var links = document.getElementsByTagName('link'); var prev = 'none', next = 'none'; for (var i = 0, l; l = links[i]; i++) { if (l.getAttribute('rel') == 'prev') { prev = l.getAttribute('href'); } else if(l.getAttribute('rel') == 'next') { next = l.getAttribute('href'); } if(prev != 'none' && next != 'none') { break; }} alert(prev + '\n' + next); })(); 

Кроме того, вот уменьшенная версия:

javascript:(function(){for(var e=document.getElementsByTagName("link"),b="none",c="none",d=0,a;(a=e[d])&&!("prev"==a.getAttribute("rel")?b=a.getAttribute("href"):"next"==a.getAttribute("rel")&&(c=a.getAttribute("href")),"none"!=b&&"none"!=c);d++);alert(b+"\n"+c)})(); 
+0

благодаря мате, что это сделал –

 Смежные вопросы

  • Нет связанных вопросов^_^