im bằng cách sử dụng các nút http://sharethis.com/ để cung cấp cho người dùng trên trang web một cách đơn giản để chia sẻ nội dung.Cách tạo động "Chia sẻ nút này" với URL tùy chỉnh có chức năng javascript?
Họ có thông tin về "các nút tùy chỉnh" ở đây: http://help.sharethis.com/customization/custom-buttons
Dường như chỉ định URL, trong ví dụ tất cả họ phải nó chỉ html như thế này:
<span class="st_sharethis" st_url="http://mycustomurl.com" st_title="Sharing Rocks!"
displayText="ShareThis"></span>
Nhưng tôi cần phải có thể tự động tạo các nút khi đang di chuyển mà không cần tải lại trang. Vì vậy, trong một ứng dụng flash tôi đang xây dựng tôi có một "nút chia sẻ" kích hoạt một chức năng javascript trên trang web mà làm cho một "popup" div mờ dần vào trung tâm của màn hình mà tôi muốn hiển thị các chia sẻ nút. Tùy thuộc vào nút chia sẻ mà ai đó nhấp vào, nút này sẽ cần phải có URL được tạo động.
Điều quan trọng là nếu họ đóng hộp thoại, sau đó nhấp lại vào nút chia sẻ, tôi hy vọng mã sẽ chỉ ghi đè mã cũ bằng các nút mới, với url/tiêu đề mới.
Vì vậy, tôi đã tạo hàm javascript này mà tôi gọi từ flash, trong khi chuyển url từ flash. Tôi đặt kịch bản và mọi thứ bên trong div "popup" của tôi, hy vọng rằng các nút sẽ được hiển thị bên trong div đó.
function shareChannel(theurl)
{
//I cant seem to find an example of what to put here to load the buttons, and give them a custom URL and title
//finally display the popup after the buttons are made and setup.
displaypopup();
}
ai cũng có thể đăng ví dụ về cách tôi có thể thực hiện việc này mà không cần tải lại trang?
EDIT: @Cubed
<script type="text/javascript">
function shareChannel(chaan)
{
document.getElementById('spID1').setAttribute('st_url', 'http://mycustomurl?chan='+chaan);
document.getElementById('spID1').setAttribute('st_title', 'Custom Title is ['+chann+'] it works!');
stButtons.locateElements();
centerPopupThree();
loadPopupThree();
}
</script>
Về cơ bản không có gì xảy ra. Tôi ghét sử dụng javascript bởi vì tôi thực sự không có ý tưởng làm thế nào để có được thông báo lỗi hoặc gỡ lỗi. Khi tôi làm việc với flex, tôi có một trình gỡ rối/bàn điều khiển tuyệt vời để giải quyết. Vì vậy, xin lỗi tôi gặp sự cố khi cung cấp thêm thông tin. Tôi đã thông báo khi tôi chỉ xóa
document.getElementById('spID1').setAttribute('st_url', 'http://mycustomurl?chan='+chaan);
document.getElementById('spID1').setAttribute('st_title', 'Custom Title is ['+chann+'] it works!');
Cửa sổ bật lên này xuất hiện.
Nhưng nếu tôi có mã setAttribute ở trên bên trong hàm, cửa sổ bật lên sẽ không bao giờ xuất hiện, vì vậy, giả sử một điều gì đó trong mã đó đang phá vỡ nó. Bất kỳ đề xuất? Hoặc ít nhất một cách tôi có thể sử dụng chrome để cho tôi biết lỗi là gì? Tôi đã thử bàn điều khiển yếu tố kiểm tra nhưng không có gì xuất hiện ở đó khi tôi kích hoạt chức năng.
Ngoài ra, trong ở phía trên cùng của mã của tôi họ đã cho tôi sử dụng:
<script type="text/javascript">var switchTo5x=true;</script>
<script type="text/javascript" src="http://w.sharethis.com/button/buttons.js">
</script><script type="text/javascript">stLight.options({publisher:'mypubidgoeshere'});</script>
Tôi có nên sử dụng stLight.locateElements();
hơn stButtons.locateElements();
Có lỗi đánh máy, bạn có 'chann' và 'chaan', đó là lý do tại sao nó không hoạt động, thay đổi 'chann' thành 'chaan' cho tiêu đề và nó sẽ làm việc kỳ diệu. Đối với các hồ sơ các công cụ> Javacript giao diện điều khiển trong chrome sẽ giúp bạn có được trình gỡ rối. Nếu bạn đến đó trước khi bạn thay đổi, nó sẽ có một lỗi 'Uncaught ReferenceError: chann không được xác định' –