У меня есть javascript внутри app/assets/javascripts/geolocation.js
который не загружается. Проверка консоли на результаты абсолютно ничего не происходит. Любые идеи, что я могу делать неправильно?
Это то, что я пытаюсь:
geolocation.js
var x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function showPosition(position) {
x.innerHTML = "Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
приложение/просмотров/поиск /search.html.erb
<button onclick="getLocation()">Try It</button>
<p id="demo"></p>
<% content_for :javascript_includes do %>
<%= javascript_include_tag "geolocation.js" %>
<% end %>
application.html.erb
<%= javascript_include_tag 'application', "data-turbolinks-track" => true %>
application.js
//= require rails-ujs
//=require jquery
//=require jquery_ujs
//=require jquery.turbolinks
//=require turbolinks-compatibility
//=require turbolinks
//= require underscore
//= require gmaps/google
//= require_tree .
Если файл JavaScript находится в любой из папок assets
(assets
, vendor
или bundle
) для Rails 3.x, вы можете добавить скрипт в свой файл html.erb
, добавив следующее:
<%= javascript_include_tag('test.js') %>
<%= javascript_include_tag('geolocation.js') %>
в application.html.erb
но ничего не происходит. Также проверил консоль на предмет каких-либо действий, но там тоже ничего не происходит. странный
x
может еще не существовать. Оберните все содержимое этого файла в обработчик DOMContentLoaded.