דרושה עזרה קלה בשפצור בוקמרקלט בג’אווהסקריפט
קיצור כתובות ב-ow.ly מתבצע באמצעות הבוקמרקלט החצי פיראטי הזה:
[code]javascript:var%20d=document,w=window,f=’http://hootsuite.com/twitter/bookmark-tool-v2?’,l=d.location,e=encodeURIComponent,p=’address=’+e(l.href)+’&title=’+e(d.title),u=f+p;a=function()%7Bif(!w.open(u,’t’,’scrollbars=0,toolbar=0,location=0,resizable=0,status=0,width=550,height=330′))l.href=u;%7D;if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else%20a();void(0);[/code]
הוא לוקח את הטייטל ושותל אחריו את הקיצור. מה שהוא לא עושה זה להוסיף אחרי/במקום הטייטל את הטקסט המסומן (selected) בעמוד שעליו הוא מופעל. התכונה הזאת כן קיימת בבוקמרקלט של קיצור כתובות ב-j.mp.
[code]javascript:var%20d=document,w=window,enc=encodeURIComponent,e=w.getSelection,k=d.getSelection,x=d.selection,s=(e?e():(k)?k():(x?x.createRange().text:0)),s2=((s.toString()==”)?s:(‘%22’+enc(s)+’%22′)),f=’http://j.mp/’,l=d.location,p=’?v=3&u=’+enc(l.href)%20+’&s=’+enc(d.title)+’%20’+s2,u=f+p;try{if(!/^(.*\.)?tumblrzzz[^.]*$/.test(l.host))throw(0);tstbklt();}catch(z){a%20=function(){if(!w.open(u))l.href=u;};if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else%20a();}void(0)[/code]
מישהו יכול לקחת את הקוד של ow.ly ולהוסיף לו את התכונה הזאת מ-j.mp? ואם אפשר, ש-ow.ly גם ייפתח בטאב חדש ולא בפופאפ.
תודה.
[עדכון] קובי לאידרשניידר נתן בראש.
הנה הקוד שלוקח את הטקסט המסומן אחרי הטייטל:
[code]javascript:var%20d=document,w=window,f=’http://hootsuite.com/twitter/bookmark-tool-v2?’,l=d.location,e=encodeURIComponent,s1=w.getSelection,s2=d.getSelection,s3=d.selection,s=(s1?s1():(s2)?s2():(s3?s3.createRange().text:0)),s4=((s.toString()==”)?s:(‘ ‘+s+’ ‘)),p=’address=’+e(l.href)+’&title=’+e(d.title+’ ‘+s4),u=f+p;a=function()%7Bif(!w.open(u))l.href=u;%7D;if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else%20a();void(0);[/code]
הנה הקוד שלוקח את הטקסט המסומן במקום הטייטל:
[code]javascript:var%20d=document,w=window,f=’http://hootsuite.com/twitter/bookmark-tool-v2?’,l=d.location,e=encodeURIComponent,s1=w.getSelection,s2=d.getSelection,s3=d.selection,s=(s1?s1():(s2)?s2():(s3?s3.createRange().text:0)),s4=((s.toString()==”)?s:(‘ ‘+s+’ ‘)),p=’address=’+e(l.href)+’&title=’+e(s4||d.title),u=f+p;a=function()%7Bif(!w.open(u))l.href=u;%7D;if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else%20a();void(0);[/code]
קצת קשה לי לבדוק את זה בלי להרשם, אבל תנסה את זה:
http://jsfiddle.net/kobi/eHU6d/
תודה. יש שתי בעיות:
1) העברית הופכת ל-%95%D7%AA%20 (פיוניקוד?)
2) זה אמנם נפתח בטאב ולא בפופאפ, אבל הדפדפן כולו מתכווץ לגודל של הפופאפ המקורי.
בקשר לגודל החלון – הסקריפט לא עושה את זה, אלא הדף שאתה טוען. זה דבר שמומלץ לא לאפשר: http://raoulpop.com/2007/11/23/do-not-allow-websites-to-resize-your-browser-window/
אגב, הסקריפט גם לא שולט על פופאפ/טאב, ההגדרות של הדפדפן חזקות יותר.
תנסה שוב את הסקריפט (באותו קישור), יכול להיות שהגזמתי עם הקידוד.
עובד! תודה!
ובאמת תהיתי איפה אני מבטל את הסתרת שורת ה-URL בפופאפים. שוב תודה.
בבקשה!
רק אם אפשר, לאידרשניידר. :)