אפשר לעשות קישור למלל מסויים בדף, הידעתם?
-
@yossiz אמר באפשר לעשות קישור למלל מסויים בדף, הידעתם?:
ידעתי כבר מזמן שיש כזו הצעה על הפרק, מה שהביא את זה לתשומת ליבי היום היא העובדה שכנראה גוגל התחילו לשים קישורים כאלה בתוצאות החיפוש
עכשיו אני מבין מה בער להם לפתח את זה...
זה באמת פיצ'ר אדיר שמשדרג את חיפוש גוגל ברמות על! -
@yossiz אמר באפשר לעשות קישור למלל מסויים בדף, הידעתם?:
מה שחסר כרגע הוא תוסף כרום שמייצר לינקים כאלו למילים שאתה מסמן באתר....
javascript:(function () { let text = getSelection().toString().trim(); let url = window.location.href.replace(/#[^#]+/, '') + `#:~:text=${encodeURIComponent(text)}`; let input = document.createElement('input'); input.value = url; document.body.appendChild(input); input.select(); document.execCommand("copy"); input.remove(); })()
-
@יוסף-בן-שמעון לא רע, אבל יש דרך ארוכה עד שזה יהיה מושלם...
אתה מעוניין בביקורת? -
@יוסף-בן-שמעון הנה זה בא... (אל תגיד שלא ביקשת...)
- נראה לי שזה לא עובד אם יש מעבר שורה בתוך הטקסט, אז צריך לבדוק את זה ובמקרה שקיים מעבר שורה צריך להשתמש בפרמטרים של תחילת הטקסט וסוף הטקסט (עיין באריכות בפוסט הראשון שהפרמטרים מוסברים בפרטות)
- לבדוק אם זה מופע ראשון של רצף המילים ובמקרה שלא להשתמש בפרמטרים האחרים כדי לבודד מופע זה מתוך האחרים
- צריך לבדוק אם יש עוד מקרים שלמרות שהטקסט נראה רציף, הדפדפן לא מתייחס אליו כטקסט רציף
- בונוס: אם הטקסט לא מופיע בקוד המקור של הדף, כנראה שזה מרונדר בצד לקוח ולהתריע על זה
זה מספיק להתחלה...
-
@WWW אני כתבתי שאם הטקסט לא מופיע בקוד המקור של הדף, זה סימן שזה מרונדר בצד לקוח, ואם כן אי אפשר לקשר ישירות לטקסט הזה.
אני רק מעיר שזה לא תמיד נכון.
קח לדוגמה את מערכת נודביבי. אם תטעון קישור זה: https://tchumim.com/topic/9018, הטקסט של הפוסטים הראשונים יופיע בקוד המקור של הדף, אבל אם תנווט את הדפדפן מדף אחר לדף זה, תקבל את הפוסטים ב-AJAX.
זה מה שהתכוונתי שיש רינדור היברידי של צד שרת וצד לקוח.
יש לזה מילה טרנדית אבל אני לא יודע מה המילה.
מובן?@WWW אמר באפשר לעשות קישור למלל מסויים בדף, הידעתם?:
(עם קצת תוספת)
לאיזה תוספות אתה מתכוון?
-
@yossiz אמר באפשר לעשות קישור למלל מסויים בדף, הידעתם?:
@WWW אני כתבתי שאם הטקסט לא מופיע בקוד המקור של הדף, זה סימן שזה מרונדר בצד לקוח, ואם כן אי אפשר לקשר ישירות לטקסט הזה.
אני רק מעיר שזה לא תמיד נכון.
בינתיים לא כ"כ הבנתי כי אתה סותר את עצמך מיניה וביה..
קח לדוגמה את מערכת נודביבי. אם תטעון קישור זה: https://tchumim.com/topic/9018, הטקסט של הפוסטים הראשונים יופיע בקוד המקור של הדף, אבל אם תנווט את הדפדפן מדף אחר לדף זה, תקבל את הפוסטים ב-AJAX.
-
@WWW אתה צודק. לא הייתי מספיק ברור.
אני מדבר על SPA שהניווט מולכד על ידי JS.
ואני התכוונתי שצריך לבדוק את קוד המקור של הדף המקורי שקיבלת מהשרת, אבל זה סתם שטות כי אין דרך לבדוק את זה ב-JS. (אם אתה לא תוסף) וגם אין עניין לבדוק את זה.
אתה הבנת שהתכוונתי לקוד המקור של ה-URL העכשווי שכבר השתנה על ידי ניווט תוך האתר (ובאמת זה מה שהייתי צריך להתכוון). ובזה אתה צודק שאם הטקסט לא נמצא שם אז אין סיכוי שהקישור יעבוד. -
@yossiz אמר באפשר לעשות קישור למלל מסויים בדף, הידעתם?:
אתה הבנת שהתכוונתי לקוד המקור של ה-URL העכשווי שכבר השתנה על ידי ניווט תוך האתר (ובאמת זה מה שהייתי צריך להתכוון). ובזה אתה צודק שאם הטקסט לא נמצא שם אז אין סיכוי שהקישור יעבוד.
לא ממש התכוונתי לזה, אבל זה מאד נכון. לא חשבתי על זה.
בקיצור יש פתרון פשוט (אולי קצת בזבזני), לנסות להגיש בקשה ללינק שנוצר ולראות אם מופיע שם הטקסט של החיפוש.
-
@yossiz מעניין איך הבוט של גוגל עובד, הוא גולל את כל הדף? או שהתפקיד של בעל האתר להתאים את התוכן לבוטים שיוצג כל המלל?
ומה יעשו בגוגל לחלק גדול מהאתרים שזה עובד בצורה כזו הם לא ישלבו את הפיצ'ר של ההדגשה?
והאם לגוגל יש דרך לדעת אם זה טקסט שמתקבל אח"כ או לא?
אולי כן שילבו איזה פתרון לזה שיהיה פרמטר של גלילה לאזור מסוים? (נשמע לי יותר מידי מתוחכם, אבל אני מאמין שאם אין את זה עכשיו יום אחד זה עוד יהיה). -
@yossiz הrouter של vue לא מצליח לעבד את זה.
זאת אומרת שכשאני מנסה לגשת עם הלינק (שעם הטקסט) אז הראוטר מתבלבל ומחזיר אותי לroor של הראוטר, אבל למרות זאת אם אני אחר כך מנווט ידנית לדף המבוקש אז הטקסט כן מסומן בצהוב.(אולי זה כיון שהדף מרונדר אז הוא בהתחלה לא מזהה את הטקסט אבל כשאני ניגש שוב אליו אז הוא מצביע על הטקסט הקיים כבר).
-
@yossiz אמר באפשר לעשות קישור למלל מסויים בדף, הידעתם?:
מה שחסר כרגע הוא תוסף כרום שמייצר לינקים כאלו למילים שאתה מסמן באתר....
אמנם לא תוסף כמו שרצית, אבל מישהו יצר סימניה חמודה בשביל זה...
https://paul.kinlan.me/scroll-to-text-bookmarklet
const selectedText = getSelection().toString(); const newUrl = new URL(location); newUrl.hash = `:~:text=${encodeURIComponent(selectedText)}`; window.open(newUrl);
-
@בערל
@יוסף-בן-שמעון כבר עשה משהו דומה
https://tchumim.com/post/103717